Java SE第三讲:原生数据类型的使用陷阱

1.java中的原生数据类型共有8种:

1)整形:使用 int 表示.32位.

int a

a=1;

可以将上面两步合二为一:

int a=1

2)字节型:使用byte表示.8位(表示-128~127之间256个整数).

3)短整型:使用short表示(16位)

4)长整型:使用long表示,(64位).

5)单精度浮点型 float,所谓的浮点型,指的就是小数,也就是实数,如1.2.

6)双精度浮点型.double.双精度浮点型表示的数据范围要比单精度浮点型的范围大.

7)字符型:使用char表示(char 是character的缩写).所谓字符,就是单个字符表示,比如字母a,或者中文赵.外面用单引号包围上,如’a’,'赵’.

8)布尔类型,使用boolean表示,布尔类型只有两种可能值,分别是true,或者是false.

2. 中的所有浮点类型默认情况下都是double类型.不能将double类型的值赋给float,即便这个 值处于float类型的范围内.总之,能否成功赋值取决于等号右边的类型与变量左边的变量类型是否一致.

3.如何将double类型的值付给float类型的变量?(1)答案是强制类型转换,将double的值强制转换为float类型.

强制转的语法:类型 变量名=(类型)变量名;

float a=1.2;编译时报错.

float a=(float)1.2

(2)使用java语言的支持:

float a=1.2F;

4.变量在使用前必须要赋值.变量必须声明其类型再使用.变量在使用之前被徐被定义,且只能定义一次.

a=1;报错

int a; System.out.println(a);报错

5.如下代码无法通过编译:

int a=1;

short b=a;

System.out.println(b);

不能将 表示范围小的值赋给表示范围大的值.

6.可以将表示范围小的值赋给表示范围大的值

7.总结:可以将表示范围小的值付给表示范围大的值,但是不能可以将表示范围大的值赋给表示范围小的值,可以通过强制类型转换实现.

原文地址:https://www.cnblogs.com/donaldjohn/p/1965982.html