Java类型转换

类型转换

  • 由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。

  • 低------------------------------------------------------>高

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

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

  • 强制转换 (类项)变量名 高 --> 低

  • 自动转换 低-->高

注意:

  1. 不能对布尔值进行转换

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

  1. 在把高容量转换到低容量的时候,强制转换

  1. 转换的时候可能存在内存溢出,或者精度问题!

public class Demo1 {
  public static void main(String[] args) {
    int money = 10_0000_0000; //JDK7新特性,数字可以用下划线分割
    int years = 20;
    int total = money*years;
    long total2 = money*years;
     
    long total3 = money*(long)years;
    System.out.println(total);//-1474836480 , 溢出
    System.out.println(total2);//-1474836480 , 默认是int,计算完成后转换为long
     
    System.out.println(total3);//20000000000 , 先把一个数转换为long
  }
}

 

上一篇:20200221英语上课笔记


下一篇:类型转换