★基础阶
▲强类型语言(Java、c++)
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
安全性较高,速度相对较慢
▲弱类型语言(Javascript)
▲Java 的数据类型分为两大类
基本类型(primitive type)
引用类型(reference type)
基本数据类型
Java里面包含8个基本数据类型,分别是: boolean、byte、char、short、int、float、douboe、long
byte 字节 byte是Java中最小的数据类型,它在内存中占8位(8个bit),取值范围从-128到127 赋值:byte i = 127
short 短整型 short类型在内存中占2个字节,取值范围从 -32768到32767 赋值:short i = 32767;
char 字符型 char类型在内存中占2个字节。表示一个字符,也可以使用ASCII码范围内的值来给char型的变量赋值。由于字符在内存中的取值不存在负数范围,所有取值范围从 0 到 65535 赋值:char i = ‘a’; 或者 char i = 97;
int 整型 int型在内存中占4个字节。取值范围从 -2147483648 到 2147483647 赋值:int i = 10;
float 单精度浮点型 float型在内存中占4个字节。取值范围从 -3.4E38 到 3.4E38 赋值:float i = 1.0f;
long 长整型 long型在内存中占8个字节。取值范围从 -9223372036854775808 到 9223372036854775807
double 双精度浮点型 double 型在内存中占8个字节。取值范围从 -1.7E308 到 1.7E308
boolean 布尔型 boolean类型只有两个值:true和false。
基本数据类型的相互转换(转型规则)
Java中所有的数字变量都是有符号(正负)的。
Java不允许类型的随意转换。只有数字变量可以进行转换,但是不能随意。
带有小数点的数字变量默认都为double型。定义float型必须进行强制类型转换。
所占字节数小的数字型变量赋值给所占字节数比它大的类型时不用强制类型转换,此时是自动转型。
int型变量赋值给char型变量时,JVM会以int型变量值到ASCII码表中查找出所对应的字符,再赋值给char型变量。反之也是。但是遵循第4条规则。
初始化简单数据类型时要注意赋值的范围,超出则会产生编译错误。
基本数据类型默认初值
类型 | 初始值 |
---|---|
boolean | false |
byte | 0 |
char | 0 |
short | 0 |
int | 0 |
float | 0.0 |
double | 0.0 |
long | 0 |
引用数据类型
原文:https://www.cnblogs.com/zhizhewuwei/p/12639429.html