7.包装类

07.包装类

Java可以直接处理基本类型的数据,但是在有些情况下需要将其作为对象处理,这时需要将其转换为包装类。

7.1Integer

该类对象包含了一个int类型的字段,提供多个方法在int和String类型之间转换,另外还提供了一些处理int类型的常量和方法。

另外还有Long类和Short类,包含的方法基本相同。

1.初始化
        Integer num1 = 32;
        // 1.隐式调用构造函数
        Integer num2 = new Integer(32);
        Integer num3 = new Integer("32");
        // 2.显示调用构造函数,参数为int类型或者数值型String变量
        Integer num4 = Integer.valueOf("32");
        Integer num5 = Integer.valueOf(32);
        // 3.调用valueOf函数,参数为int类型或者数值型String变量
2.常量

MAX_VALUE:int类型的最大值 2^31-1

MIN_VALUE:int类型的最小值 -2^31

SIZE: 二进制补码形式表示int值的位数,32

TYPE: 表示基本类型int的class实例

3.常用方法
方法返回值功能描述
byteValue()byte以byte类型返回该Integer的值
compareTO(Integer anotherInteger)int在数值上比较两个Integer对象,两个值相等返回0;调用对象值更大返回正值;否则返回负值
equals(Object IntegerObj)boolean比较此对象与指定对象是否相等
intValue()int以int型返回此Integer对象
shortValue()short以short型返回此Integer对象
toString()String返回一个表示该Integer值的String对象
valueOf()Integer返回保存指定的String值的Integer对象
parseInt(String str)int返回包含在由str指定的字符串中数字的等价整数值

7.2Boolean

1.初始化
        Boolean b1 = true;
        // 1.隐式调用构造函数
        Boolean b2 = new Boolean("1");
        Boolean B2 = new Boolean(true);
        // 2.显式调用构造函数,参数为boolean类型或者string类型(String参数不为NULL、忽略大小写时等于true则值为true,否则为false)
        Boolean b4 = Boolean.valueOf("32");
        // 3.valueOf()函数,String参数不为NULL、忽略大小写时等于true则值为true,否则为false
2.常量

TRUE:对应值为true的Boolean对象

FALSE:对应值为false的Boolean对象

TYPE:基本类型boolean的Class对象

3.常用方法
方法返回值功能描述
booleanValue()boolean将Boolean对象的值以相应的boolean值返回
equals(Object obj)boolean判断调用该方法的对象与obj是否相等。仅当参数不是null,而且与调用该方法的对象一样都表示同一个boolean值对象时,返回true
parseBoolean(String s)boolean将字符串番薯解析为boolean值
toString()String返回表示该boolean值的String对象
valueOf(String s)boolean返回一个用指定字符串表示的boolean值

7.3Byte

1.初始化
        Byte a2 = 32;
        // 1.隐式调用构造函数
        Byte a1 = new Byte("31");
        byte a3 = 33;
        Byte a4 = new Byte(a3);
        // 2.显式调用一个构造函数,参数为String类型或者byte类型
        Byte a5 = Byte.valueOf("35");
        // 3.推荐,调用valueOf函数,参数为String或者byte类型数值
2.常量

MIN_VALUE:byte类型最小值,-128

MAX_VALUE:byte类型最大值,127

SIZE:二进制补码形式表示的byte值的位数,8

TYPE:基本类型byte的CLASS实例

3.常用方法
方法返回值功能描述
byteValue()byte以一个byte值返回Byte对象
compareTo(Byte anotherByte)int在数字上比较两个Byte对象
doubleValue()double以一个double值返回此Byte的值
intValue()int以一个int值返回此Byte的值
paraseByte(String s)byte将String型参数解析成等价的字节(byte)形式
toString()String返回表示此Byte的值的String对象
valueOf(String str)byte返回一个保持指定的String所给出的值的Byte对象
equals(Object obj)boolean将此对象与指定的对象比较,如果调用该方法的对象与obj相等,则返回true,否则返回false

7.4Character

1.初始化
        Character s1 = 's';
        // 1.隐式调用构造方法,参数为一个char类型
        Character s2 = new Character('a');
        // 2.显式调用构造方法
        Character s3 = Character.valueOf('b');
        // 3.返回一个character对象,保存指定的string类型

点击并拖拽以移动

2.常量

Character类提供大量表示特定字符的常量,用以表示Unicode规范中的常规类别。

3.常用方法
方法返回值功能描述
equals(Object obj)Boolean将调用该方法的对象与指定的对象相比较
toUpperCase(char ch)char将字符参数转换为大写
toLowerCase(char ch)char将字符参数转换为小写
toString()String返回一个表示指定char值的String对象
charValue()char返回此Character对象的值
isUpperCase(char ch)boolean判断指定字符是否为大写字符
isLowerCase(char ch)boolean判断指定字符是否为小写字符

7.5Double

1.初始化
    Double a1=3.14;
    //1.隐式调用构造函数,参数为double类型
    Double a2=new Double(3.141);
    Double a3=new Double("3.1415");
    //2.显式调用构造函数,参数为double类型或者String类型
    Double a4=Double.valueOf(3.1415);
    Double a5=Double.valueOf("3.14159");
    //3.valueOf函数返回一个Double类型,参数为double类型或者String类型

点击并拖拽以移动

2.常量

Double.MAX_EXPONENT:返回一个int值,表示double的最大指数

Double.MIN_EXPONENT:返回一个int值,表示double的最小指数

Double.NEGATIVE_INFINITY:返回一个double值,表示保存double类型的负无穷大值的常量

Double.POSITIVE_INFINITY:返回一个double值,表示保存double类型的正无穷大值的常量

3.常用方法
方法返回值功能描述
byteValue()byte以byte形式返回Double对象值(通过强制转换)
compareTO(Double b)int对两个Double对象进行数值比较。相等返回0,调用对象小返回负值,否则返回正值
equals(Object obj)boolean将此对象与指定的对象相比较
intValue()int以此int形式返回double值
isNaN()boolean如果此double值时非数字(NaN)值,则返回true;否则返回false
toString()String返回此Double对象的字符串表示形式
valueOf(String str)Double返回保存用参数字符串str表示的double值的Double对象
doubleValue()double以double形式返回此Double对象
longValue()long以long形式返回此double值(通过强制类型转换为long类型)

7.7抽象类常用方法归纳

抽象类Number是所有数字类的父类,其中提供了包装类互相转换的方法,并被各子类实现

7.7.1.包装类转换为基本类型

这里写图片描述

7.7.2包装类赋值valueOf()

所有包装类都有该方法,已在上文中给出示例

character类中参数只能是char类型,其他包装类参数可以是对应基本类型和String类型

7.7.3将字符串转变为基本类型parse**()

String str="123";
int num1=Integer.parseInt(str);
double num2=Double.parseDouble(str);
boolean num3=Boolean.parseBoolean(str);
//parseBoolean()参数不为true(不区分大小写),则返回值均为False

点击并拖拽以移动

7.7.4将包装类转换为String类型toString()

Integer num1=32;
Byte num2=33;
Character num3='s';
Boolean num4=true;
String str1=num1.toString();
String str2=num2.toString();
String str3=num3.toString();
String str4=num4.toString();
//经实验,亦可以直接通过类调用toString()方法,用参数赋值

点击并拖拽以移动

7.7.5比较两个对象是否相等equals(Object Obj)

返回一个Boolean值

Integer num1=Integer.valueOf(33);
Integer num2=Integer.valueOf(34);
Boolean result=num1.equals(num2);

点击并拖拽以移动

7.7.6比较两个对象的大小compareTo(Object Obj)

Boolean类没有该方法,该方法返回一个int值

形如Obj1.compareTo(Obj2);

若Obj1等于Obj2,返回0;

若Obj1大于Obj2,返回一个正数;

若Obj1等于Obj2,返回一个负数;

Integer num1=Integer.valueOf(33);
Integer num2=Integer.valueOf(34);
int flag=num1.compareTo(num2);

点击并拖拽以移动

参考博客及书籍:

《Java从入门到精通》

https://blog.csdn.net/wwp231/article/details/52281541

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值