java包装类

Java包装类

java是一种面向对象的编程语言,为了能把基本数据类型当作对象处理,Java提出了包装类的概念,包装类分别把Java中8个基本数据类型包装成相应的类,这样就可以通过对象调用各自包装类中许多实用的方法,Java中8个基本数据类型各自对应的包装类如下表:

基本数据类型对应的包装类基本数据类型对应的包装类
byteByteshortShort
intIntegerlongLong
floatFloatdoubleDouble
charCharacterbooleanBoolean

下面对较常用的包装类进行讲解:

Integer类

java.long包中的Byte类Integer类Short类Long类,分别是基本数据类型byteintshortlong类的包装类,由于上述4个包装类都是Number类,且都是对整数进行操作,所以上述4个包装类包含的方法也基本相同,下面将以Integer类为例,讲解Integer类中的构造方法常用方法和常量。

构造方法:

Integer类有以下两种构造方法

  • Integer(int number):该方法以一个int型变量作为参数创建Integer对象,例如:
Integer number = new Integer(123);
  • Integer(String int):该方法以一个String型变量作为参数创建Integer对象,例如:
Integer number = new Integer("123");

注意:如果要使用字符串变量创建Integer对象,字符串变量的值必须是整数型的(如"123"),否则将会抛出NumberFormatException异常。

Integer常用的方法如下表:

方法返回值功能描述
valueOf(String str)Integer返回String型参数值的Integer对象
parseInt(String str)int返回与String型参数值等价的int值
toString()String返回一个表示Integer值得String对象(可以指定进制基数)
toBinaryString(int i)String以二进制无符号整数形式返回一个整数参数的字符串表示形式
toHexString(int i)String 以十六进制无符号整数形式返回一个整数参数的字符串表示形式
toOctalString(int i)String以八进制无符号整数形式返回一个整数参数的字符串表示形式
equals(Object IntegerObj)Boolean比较此对象与指定的对象是否相等
intValue()int以int型返回此Integer对象
shortValue()short以short型返回此Integer对象
byteValue()byte以byte型返回此Integer对象
compareTo(Integer anotherInteger)int对两个Integer对象进行数值比较,如果这两个值相等,则返回0;如果调用对象的数值小于anotherInteger的数值,则返回负值;如果调用对象的数值大于anotherInteger的数值,则返回正值。

下面通过一个实例演示Integer类常用方法的使用,代码如下:

public class Demo{
	public static void main(String[] args) {
		//用parseInt方法将字符串123转换成数字类型
		int num = Integer.parseInt("123");
		//创建一个Integer对象
		Integer num1 = Integer.valueOf(123);
		//将转换成数字类型的数字加1
		System.out.println("将num值加1:" + (num+1));
		//用equals方法比较num和num1数值是否相等
		System.out.println("equals(Object IntegerObj)方法:" + num1.equals(num));
		//二进制方法
		String num2 = Integer.toBinaryString(123456);
		System.out.println("toBinaryString(int i)方法:" + num2);
		//十六进制方法
		String num3 = Integer.toHexString(1234567);
		System.out.println("toHexString(int i)方法:" + num3);
		//八进制方法
		String num4 = Integer.toOctalString(12345678);
		System.out.println("toOctalString(int i)方法:" + num4);
		//将123456789转换成十五进制方法
		String num5 = Integer.toString(123456789,15);
		System.out.println("toString()方法:" + num5);		
	}
}

返回结果如下图:

Integer常量

Integer类提供了以下4个常量:

  • MAX_VALUE:表示int类型可取的最大值;
  • MAX_VALUE:表示int类型可取的最小值;
  • SIZE:用来以二进制补码形式表示int值得位数;
  • TYPE:表示基本类型int的Class实例;
public class Demo { // 创建类GetCon
	public static void main(String args[]) {
		int maxint = Integer.MAX_VALUE; // 获取Integer类的最大值
		int minint = Integer.MIN_VALUE; // 获取Integer类的最小值
		int intsize = Integer.SIZE; // 获取Integer类的二进制位数
		System.out.println("int类型可取的最大值是:" + maxint); // 将常量值输出
		System.out.println("int类型可取的最小值是:" + minint);
		System.out.println("int类型的二进制位数是:" + intsize);
	}
}

返回值如下图:

Number类

Number类是一个抽象类,它是Byte类、Integer类、Short类、Long类、Float类和Double类的父类如下图:

要把Number类的子类对象转换成为对应的基本数据类型,需要使用Number类对应子类中的方法,这些方法如下表:

方法返回值功能描述
byteValue()byte以byte形式返回指定的数值
intValue()int以int形式返回指定的数值
floatValue()float以float形式返回指定的数值
shortValue()short以short形式返回指定的数值
longValue()long以long形式返回指定的数值
doubleValue()double以double形式返回指定的数值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值