包装类

1. 基本类型与包装类

  1. Java的基本数据类型包括:boolean、char、byte、short、int、float、long、double 8种。分别对应的包装类是:Boolean、Character、Byte、Short、Integer、Float、Long、Double。
  2. 包装类的默认值为null
	int i = 5;//基本类型
	Integer n = new Integer(i);//包装类型
	//将基本类型double变量包装为对象
	System.out.println(n);
	
	double d = 5.6;
	Double dx = new Double(d);
	System.out.println(dx);
	
	char c = 'A';
	Character ch = new Character(c);
	System.out.println(ch);
	
	short s = 2;
	Short sh = new Short(s);
	System.out.println(sh);
	
	long l = 5l;
	Long lo = new Long(l);
	System.out.println(lo);
	
	byte b = 3;
	Byte by = new Byte(b);
	System.out.println(by);
	
	boolean bo = 5 > 3;
	Boolean boo = new Boolean(bo);
	System.out.println(boo);
	
	float f = 5.6f;
	Float fl = new Float(f);
	System.out.println(fl);
  1. Number是Byte,Short,Integer,Long,Double的父类型,提供了数据类型转换方法可以在6个类型之间相互转换,转换时候可能发生溢出和精度损失。转换成当前类型的话,是拆包装方法
	System.out.println(dx.intValue());
	System.out.println(n.doubleValue());
	System.out.println(n.floatValue());
	
	Integer ix = new Integer(400);
	Byte bx = ix.byteValue();
	System.out.println(bx);
	
	Double dl = new Double(3.141592656946);
	float fx = dl.floatValue();
	System.out.println(fx);
	
	//拆包装方法
	Integer i2 = new Integer(200);
	int m = i2.intValue();
	System.out.println(m);

2. 自动装箱和自动拆箱

  1. 原理为Java的编译器会在编译期间进行代码替换,利用API方法完成装箱和拆箱
  2. 好处是可以大大节省代码量,提高开发效率
    	Integer i = 5;//自动装箱
    	int n = i;//自动拆箱
    	
    	Double dx = 5.6;//自动装箱
    	double dn = dx;//自动拆箱
    	
    	Character c = 'A';
    	char ch = c;
    	
    	Byte b = 5;
    	byte bx = b;
    	
    	Short s = 5;
    	short sx = s;
    	
    	Float f = 5.6f;
    	float fx = f;
    	
    	Long l = 5L;
    	long lx = l;
    		
    	Boolean boo = 5 > 3;
    	boolean bo = boo;
    	
    	//如果包装类型变量值为null时候,进行自动拆包会发生空指针异常
    	//Integer k = null;
    	//int q = k;//k.intValue();			
    

3. (10进制)字符串到基本类型(2进制)

  1. Java在包装类提供了10进制字符串到基本类型(2进制)的相互转化
  2. Java“认识”十进制完全依赖这些API实现的
  3. 大多数情况下,Java会自动调用这些方法完成转换
  4. 如果在开发中需要将十进制字符串转换基本类型的时候,或者将基本类型转换为十进制字符串时候可以调用这些转换API完成
    	int n = 50;
    	System.out.println(n);
    	
    	String str = "2683";
    	int m = Integer.parseInt(str);
    	String s = Integer.toString(m);
    	System.out.println(m);
    	
    	str = "3.1415926E10";
    	double d = Double.parseDouble(str);
    	s = Double.toString(d);
    	System.out.println(s);
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值