第六节 (6.1)包装类

   发布日期:2023-08-20 19:15:48     来源:网络整理    作者:本站编辑    浏览:22    评论:0    

    这一节我们来介绍一下包装类。

包装类:

什么是包装类,java为什么要提供包装类。

    因为java编程的特点是面向对象的,而基本数据类型不能实现这一功能,使得程序开发存在一定的弊端。虽然java可以处理基本数据类型,但是有些情况下是需要作为对象来处理,这时候就需要转换成包装类了。

数据类型与对象之间转换:

    数据类型并不是一个对象,它在内存中存储的方式不同。我们无法像操作一个对象来操作数据类型,比如我们无法计算一个整型的哈希值。这样就导致程序中有很多的比较运算无法进行下去了。解决这种问题最好的方式就是将数据类型封装到一个类中,然后再创建这个类的对象。而封装数据类型的这个类就是包装类。

包装类及其对应的基本数据类型:

左边是类名,右边对应的是基本数据类型

包装类使用方法大致一致,本节以Integer类来介绍:

Integer类:

    Integer类用于封装int类型数据,它的构造方法如下:

Integer(int number)Integer(String str)

我们可以用int型的数字作为参数,也可以用String字符串来作为参数,然后创建一个等于参数字面值的一个Integer对象。

 包装类提供了更多强大的功能,如下:

        //常量        MIN_VALUE       //最小值        MAX_VALUE       //最大值        SIZE            //比特长度        TYPE            //类型        //提供的几个方法                  parseInt()      //转换为int值        toString()      //返回Integer对象的字符串表现形式        toBinargString()    //二进制        toHexString()       //十六进制        toDctalString()     //八进制  

这里有四个常量,也就是前四个,分别是int类型的最小值,最大值,比特长度(多少位),类型(返回了int是哪一种类型)。

然后又列出了几种方法,分别是字符串转换为int值,返回Integer对象的字符串表现形式,返回二进制,返回十六进制,返回八进制。

首先我们来看一下Integer四个常量是什么样子的。

import static java.lang.System.out;/** * 演示类 * @author Lrn */public class Demo {
public static void main(String[] args) { out.println("int类型的最大值为:"+Integer.MAX_VALUE); out.println("int类型的最小值为:"+Integer.MIN_VALUE); out.println("int类型的长度:"+Integer.SIZE); out.println("int类型的类型:"+Integer.TYPE); }}

运行结果:

int类型的最大值为:2147483647int类型的最小值为:-2147483648int类型的长度:32int类型的类型:int

 我们演示完这四个常量后,我们来看一下如何创建Integer对象

import static java.lang.System.out;/** * 演示类 * @author Lrn */public class Demo {
public static void main(String[] args) { //使用构造方法来创建 Integer integer1 = new Integer(123); out.println(integer1); out.println("--------分割线--------");
//使用构造方法的字符串参数创建 Integer integer2 = new Integer("123456789"); out.println(integer2); out.println("--------分割线--------"); //另一种创建Integer对象的方式 Integer integer3 = Integer.valueOf(123); Integer integer4 = Integer.valueOf("123456789"); out.println(integer3); out.println(integer4); out.println("--------分割线--------"); //将字符串转换为int值并运算 int num1 = Integer.parseInt("876"); out.println(num1+2); int num2 = integer2 - 10; out.println(num2); out.println("--------分割线--------");
//将数字转换为其他进制数字,保存的结果需要在一个字符串当中 String str1 = Integer.toBinaryString(11); //十进制转换为二进制 out.println("11的二进制表示为:"+str1);
String str2 = Integer.toHexString(11); //十进制转换为十六进制 out.println("11的十六进制表示为:"+str2);
String str3 = Integer.toOctalString(11); //10进制转换为八进制 out.println("11的八进制表示为:"+str3);
//以上为Integer提供的转换进制的方法,我们也可以自定义转换 String str4 = Integer.toString(11,15); //第一个参数为需要转换的十进制数字,第二个参数为需要转换成几进制,这里为15进制 out.println("11的十五进制表示为:"+str4); }}

运行结果:

123--------分割线--------123456789--------分割线--------123123456789--------分割线--------878123456779--------分割线--------11的二进制表示为:101111的十六进制表示为:b11的八进制表示为:1311的十五进制表示为:b
 
 
更多>同类包装新闻

0相关评论
Copyright © 2017-2020  中网互动包装网  版权所有  
Powered By DESTOON 皖ICP备20008326号-21

工商网监标识