基本数据类型中的整数类型

 

  整数类型:byte short int long

    整数类型种默认为int

    整数类型各自取值范围:

    

数据类型 占用存储空间 存储范围
byte 1字节 -27~27-1
short 2字节  -215~215-1
int 4字节 -231 ~ 231-1
long 8字节  -263~263-1

                                                

 1 class Var08{
 2     public static void main(String[ ] args) {
 3     //byte
 4     byte a = 1;    //注意:在JAVA中,当对byte short char类型赋值时,如果没有超出该类型取值范围则可以直接赋值
 5     a = 5;
 6     a = -128;
 7     //a = 128;        //出现编译错误,因为超出byte类型取值范围
 8     System.out.println("a = " + a);
 9 
10     //short
11     short b =128;
12     b = -32768;
13     //b = 32768;        //出现编译错误,超出short类型取值范围
14                             //解决办法:只能找一个比该类型范围大的类型存储该值
15     System.out.println("b = " +b);
16 
17     //int
18     int c = 0;
19     //c = 12345678901;        //出现编译错误。超出int类型范围
20     System.out.println("c = " +c);
21 
22     //long
23     long d = 6;        //注意:在Java中,取值范围小的类型可以直接赋给取值范围大的类型,构成自动类型转换
24     d = 12345678;
25     //d = 12345678909;        //出现编译错误,因为值默认为int,超出int取值范围
26     //解决方法:将右侧的值后面添加L或l,此时该值就为long,也就是说该值就为long类型
27     d = 12345678909L;    //没有构成自动类型转换
28     System.out.println("d = " +d);
29     }
30 }

在JAVA中,当对byte short char类型赋值时,如果没有超出该类型取值范围则可以直接赋值

在Java中,取值范围小的类型可以直接赋给取值范围大的类型,构成自动类型转换

    long d = 6;    //构成自动类型转换

    d = 12345678909;   //出现编译错误,因为值默认为int,超出int取值范围

    解决方法:将右侧的值后面添加 L 或 l ,此时该值就为long,也就是说该值就为long类型

    d = 12345678909L;   //没有构成自动类型转换

  

坎坷困难会让你不断的强大起来 -- 前提是你别怂
原文地址:https://www.cnblogs.com/penphy/p/10216847.html