java类型转换

自动类型转换

把小范围的类型的变量转换成大范围的类型变量不需要特殊声明系统自动完成 如:byte 转成 int
注意:
byte b1 = 10;
byte b2 = 20;
//错误: 不兼容的类型: 从int转换到byte可能会有损失
//否则,两个操作数都将转换为int类型。
byte b3 = b1 + b2 //错误,b1+b2是int类型,java的整数默认类型为int,b3是byte类型,二者类型不同,所以出错
byte b3 = (byte)(b1 + b2); //正确

强制类型转换

把大箱子放进小箱子需要强转,需要转成什么类型变量前面就加上(要转的类型)

子类和父类之间的类型转换

向上转型:子类转成父类 同自动类型转换
向下转型:父类转成子类 同强制类型转换
并不是所有的对象都可以向下转型,只有当这个对象原本就是子类对象通过向上转型得到的时候才能够成功转型。

//Dog类继承pet eat1是Dog独有的
	
	//这种可以正常输出   在执行时调用的是子类的方法 
	//在运行时调用的是父类方法 
	Pet pet=new Dog();
    Dog dog=(Dog)pet;
    dog.eat1();
    
    
   //下面这种会报错
    Dog dog1=(Dog)new Pet();
    dog1.eat1();

结论:当发生向下转型的时候一定要先发生向上转型

  • 注意:接口与实现类与 父类与子类 类似都体现了多态但接口不呢个实例化即不能new

基本数据类型和String之间的转换

String 转成 基本数据类型转成谁就用谁的包装类
如:String str="123"; int m=Integer.parseInt(str);
基本数据类型准成String 用Strng.valueOf(字符串变量);
如:int num3=100; String str1=String.valueOf(num3); System.out.println("str1="+str1);

也可以:String str2=num3+"";

基本数据类型和包装类转换 他们会自动转换(jdk1.5以后的自动转换)

包装类:8种基本数据类型对应的类,就是包装类

//装箱:把基本数据类型转成包装类
	//拆箱:把包装类转成基本数据类型
	int i=10;
	Integer i1=i;//自动装箱
	System.out.println(i1);
	Integer a=20;
	int a1=a;//自动拆箱
	System.out.println(a1);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值