概述
java中的数据类型
包装类与基本数据类型
java中提供了8中基本类型:6中数字类型(4个整数型,2个浮点型),1种字符类型,还有1种布尔类型。
- 整数: int 、short、byte、long,初始值为0.
- 浮点型:float、double,初始值为0.0 。
- 字符:char 初始值为空格。
- 布尔值:boolean ,初始值为false。
java中包装类包括:Integer、Long、Short、Byte、Character、Double、Float、Boolean、BigInteger、BigDecimal。其中BigInteger、BigDecimal没有对应的基本类型,主要用于高精度的运算。BigInteger支持任意精度的整数,BigDecimal支持任意精度带小数的运算。
基本类型与包装类的异同
1、在java中,一切皆对象,但8大基本类型却不是。
2、声明方式的不同,基本类型无需通过new关键字来创建,而包装类型需要。
3、存储方式及位置不同,基本类型是直接存储变量的值保存在栈中能高效存取,包装类型需要通过引用指向实例,具体实例保存在堆中。
4、初始值不同,包装类型的初始值为null,基本类型的初始值视具体的类型而定,比如int类型的初始值为0,boolean类型为false。
5、使用方式的不同,比如与集合类合作使用时只能使用包装类型。
包装类与基本数据类型
- 装箱:把基本数据类型转换成包装类
自动装箱
int i1 = 2;
Integer i2 = i1;
手动装箱
int i1 = 2;
//手动装箱
Integer i3 = new Integer(i1);
- 拆箱:把包装类转换成基本数据类型
自动拆箱
手动拆箱
int i1 = 2;
Integer i2 = i1;
// 自动拆箱
int i4 = i2;
// 手动拆箱
int i5 = i2.intValue();
字符串与基本数据类型
- 基本数据类型转换为字符串
使用包装类的toString()方法
int t1 = 2;
String t2 = Integer.toString(t1);
System.out.println("int类型转换为String类型对象t2="+t2);
- 字符串转换为基本数据类型
自动拆箱调用包装类的parseXxx()静态方法
调用包装类的valueOf()方法转换为基本类型的包装类,自动拆箱。
//1、包装类的parse
int t3 = Integer.parseInt(t2);
//2、包装类的valueOf 先将字符串转换为包装类,
//再通过自动拆箱完成基本类型转换
int t4 = Integer.valueOf(t2);
常用方法
1、Integer
java.lang包中的Integer类、Long类和Short类,分别将基本类型int、long、short封装成一个类。由于这些类都是Number的子类,区别就是封装不同的数据类型,其包含的方法基本相同,下面以Integer类为例介绍:
Integer类在对象中包装了一个基本类型int的值。该类的对象包含一个int类型的字段。此外,该类提供了多个方法,能在int类型和string类型之间互相转换,同时还提供了处理int类型时非常有用的其他一些常量和方法。
1、构造方法有两种:
① 以int型变量作为参数创建Integer对象,实例代码如下:
Integer number = new Integer(7);
② 以String型变量作为参数创建Integer对象,实例代码如下:
Integer number = new Integer("7");
2、常用方法:
方法 | 返回值 | 功能描述 |
---|---|---|
byteValue() | byte | 以byte类型返回该Integer的值 |
compareTo(Integer anotherInteger) | int | 在数字上比较两个Integer对象。如果相同返回0;调用对象的数值小于anotherInteger返回负值,反之,返回正值。 |
equals(Object IntegerObj) | boolean | 比较此对象与指定对象是否相等 |
intValue() | int | 以int型返回此Integer对象 |
shortValue() | short | 以short型返回此Integer对象 |
toString() | String | 返回一个表示该Integer值的String对象 |
valueOf(String str) | Integer | 返回指定Sting值的Integer对象 |
parseInt(String str) | int | 返回包含在由str指定的字符串中的数字的等价整数值 |
3、常用的常量:
① MAX_VALUE:表示int型可取的最大值
② MIN_VALUE:表示int型可取的最小值
③ SIZE:表示以2进制补码形式表示int值的位数
④TYPE:表示基本类型class实例
int maxint = Integer.MAX_VALUE;
int minint = Integer.MIN_VALUE;
int intsize = Integer.SIZE;
System.out.println("int类型可取的最大值:"+maxint);
System.out.println("int类型可取的最小值:"+minint);
System.out.println("int类型的二进制位数:"+intsize);
2、Boolean
Boolean类型将基本类型为boolean的值包装在一个对象中。一个Boolean类型的对象只包含一个类型为boolean的字段。此外,此类还为boolean和String的相互转换提供了许多方法,并提供了处理boolean时非常有用的一些常量和方法。
1、构造方法
① 创建一个表示value参数的boolean对象,实例如下:
Boolean b = new Boolean(true);
② 以String变量作为参数,创建boolean对象。此时,如果传入的字符串不为null,且忽略大小写后的内容等于“true”,则 生成Boolean对象值为true,反之为false。
Boolean b1 = new Boolean("OK");
Boolean b2 = new Boolean("TRUE");
System.out.println(b1);//false
System.out.println(b2);//true
2、常用方法:
方法 | 返回值 | 功能描述 |
---|---|---|
booleanValue() | boolean | 将Boolean对象的值以对应的boolean值返回 |
equals(Object obj) | boolean | 判断调用该方法的对象与obj是否相等,当且仅当参数不是null,而且与调用该方法的对象一样都表示同一个boolean值的Boolean对象时才返回true |
toString() | String | 返回一个表示该boolean值的String对象 |
valueOf(String str) | boolean | 返回一个用指定的字符串表示值的boolean值 |
parseBoolean(String str) | boolean | 将字符串参数解析为boolean值 |
Boolean b1 = new Boolean("OK");
Boolean b2 = new Boolean(false);
System.out.println(b1.booleanValue());//false
System.out.println(b2.booleanValue());//false
3、常用的常量
① TRUE:对应基值true的Boolean对象;
② FALSE:对应基值false的Boolean对象;
③ TYPE:表示基本类型Class实例。
3、Byte
Byte类将基本类型为byte的值包装在一个对象中,一个byte类型的对象只包含一个类型为byte的字段。
1、构造方法
Byte类提供了两种构造方法的重载形式来创建Byte类对象。
① Byte(byte value)通过这种方法创建的byte对象,可表示指定的byte值。
byte b = 45;
Byte b1 = new Byte(b);
② Byte(String str) 通过这种方法创建的byte对象,可表示String参数指定的byte值。
Byte b1 = new Byte("12");
2、常用方法
方法 | 返回值 | 功能描述 |
---|---|---|
byteValue() | byte | 以一个byte值返回Byte对象 |
compareTo(Byte anotherByte) | int | 在数字上比较两个Byte对象。 |
doubleValue() | double | 以一个double值返回Byte对象 |
equals(Object obj) | boolean | 比较此对象与指定对象是否相等 |
intValue() | int | 以int值返回此Byte的值 |
toString() | String | 返回一个Byte值的String对象 |
valueOf(String str) | byte | 返回指定Sting值的Byte对象 |
parseByte(String str) | byte | 返回包含在由str指定的字符串中的数字的等价byte |
3、常用常量
① MAX_VALUE:最大值
② MIN_VALUE:最小值
③ SIZE:2进制
④TYPE:表示基本类型byte的class实例
4、Character
Character类在对象中包装一个基本类型为char的值。一个Character对象包含类型为char的单个字段。
1、构造方法
Character(char value)
2、常用方法
方法 | 返回值 | 功能描述 |
---|---|---|
charValue() | char | 返回此Character对象的值 |
compareTo(Character anotherCharacter) | int | 在数字上比较两个Character对象。 |
equals(Object obj) | boolean | 比较此对象与指定对象是否相等 |
toString() | String | 返回一个表示该char值的String对象 |
toUpperCase(char ch) | char | 将字符参数转为大写 |
toLowerCase(char ch) | char | 将字符参数转为小写 |
isUpperCase(char ch) | boolean | 判定指定字符参数是否为大写 |
isLowerCase(char ch) | boolean | 判定指定字符参数是否为小写 |
5、Double
Double和Float包装类是对double、float基本类型的封装,他们都是Number类的子类,又都是对小数进行操作,所以常用基本方法相同。
Double类在对象中包装一个基本类型为double的值,每个double类都包含一个double类型的字段。
1、构造方法
Double类提供了两种构造方法来获得Double对象;
① Double(double value):基于double参数创建Double类对象。
② Double(String str): 构造一个新分配的Double对象,表示用字符串表示的Double类型的浮点值。
2、常用方法
方法 | 返回值 | 功能描述 |
---|---|---|
byteValue() | byte | 以byte类型返回该Double对象的值(通过强制转换) |
compareTo(Double d) | int | 在数字上比较两个Double对象。如果相同返回0;调用对象的数值小于d返回负值,反之,返回正值。 |
equals(Object obj) | boolean | 比较此对象与指定对象是否相等 |
intValue() | int | 以int型返回此Double对象 |
isNaN() | boolean | 如果此double是非数字,则返回true |
toString() | String | 返回此Double对象值的String对象 |
valueOf(String str) | double | 返回指定Sting值的Double对象 |
doubleValue() | double | 以double形式返回此Double对象 |
longValue() | long | 以long形式返回此Double对象(通过强制转换) |
3、常用常量
6、Number
抽象类Number是父类,Number类的子类必须提供将表示数值转换成byte、double、float、long、int、short的方法。
常用方法
方法 | 返回值 | 功能描述 |
---|---|---|
byteValue() | byte | 以byte类型返回指定的数值 |
intValue() | int | 以int类型返回指定的数值 |
floatValue() | float | 以float类型返回指定的数值 |
shortValue() | short | 以short类型返回指定的数值 |
longValue() | long | 以long类型返回指定的数值 |
doubleValue() | double | 以double类型返回指定的数值 |
最后
以上就是贪玩鞋垫为你收集整理的java基础学习5---包装类及常用方法的全部内容,希望文章能够帮你解决java基础学习5---包装类及常用方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复