Java类型转换

Java类型转换

自动类型转换

  • 由于Java是强语言类型,所以有计算的时候,需要类型转换

  • 由低到高---------------->

  • byte,short,char--->int--->long--->float--->double

  • 运算中,不同类型的数据先转化为同一类型,然后运算

  • 类型转换分为两种:自动类型转换,强制类型转换

  • 自动转换 低--->高(不会有损失,不需要强制转换)

强制类型转换

  • 由于Java是强语言类型,所以有计算的时候,需要类型转换

  • 由低到高---------------->

  • byte,short,char--->int--->long--->float--->double

  • 运算中,不同类型的数据先转化为同一类型,然后运算

  • 类型转换分为两种:自动类型转换,强制类型转换

  • 把高容量的类型转换为低容量的时候需要强制转换,不然报错

  • 强制转换 高--->低 (精度会有损失)

boolean类型

  • boolean类型不能任何转换

对象类型

  • 不能把对象类型转换为不相干的类型

计算溢出代码

package demo;

public class Demo02 {

   public static void main(String[] args) {
       double  dd=89.8;
       int a=(int)dd;

       System.out.println(a);
       System.out.println("****************");
       long d=564646455;
       System.out.println((short)d);
       System.out.println("****************");
       int c=89;
       System.out.println((long) c);
       System.out.println("****************");
       int cc=998;
       System.out.println((char) cc);
       System.out.println("****************");
       int aaa=034353;
       System.out.println(aaa);
       System.out.println("****************");
       //计算超出int类型   计算时候类型不会自动提升为long类型,需要计算时候强制转换,然后在用long接收
       int ff=10_0000_0000;
       int years=20;
       long sum= ((long)ff)*years;
       System.out.println(sum);
       System.out.println("****************");

  }
}
posted @ 2020-03-30 10:16  Crazylearningjava  阅读(352)  评论(0)    收藏  举报