变量
l 名称:标识符,代表这块内存中的数据。
l 类型:根据所存储的数据类型的不同,有各种不同类型的变量。
l 初始值:为其赋值或者是保留缺省值,变量在使用前必须先初始化。
l 作用域 : 在不同程序块中的可用性及生命周期
l int x=0,y;
l y=x+3;
Java中两大数据类型:
基本数据类型:也称作内置类型,Java语言本身提供的基本数据类型,是其他类型(包括Java核心库和用户自定义类型)的基础。
例如:boolean , char 等
引用数据类型:Java语言根据基本类型扩展出的其他类型。
例如: class , interface 等
Java的基本数据类型包括整数类型(1个字节:byte、2个字节:short、4个字节:int、8个字节:double)、字符类型(2个字节:char)、浮点类型(4个字节:float、8个字节:double)、布尔类型(boolean)。
引用类型包括类(class)、接口(interface)和数组类型。
基本数据类型的取值范围:
基本类型 | 类型定义 | 类型取值 |
boolean | 1字节8位 | true,false |
byte | 1字节8位有符号整数 | -128~+127 |
char | 2字节16位Unicode字符 | Unicode 0~Unicode 216-1 |
short | 2字节16位有符号整数 | -32768(-215)~ +32767(+215-1) |
int | 4字节32位有符号整数 | -2147483648(-231) ~+2147483647(231-1) |
long | 8字节64位有符号整数 | -263~+263-1 |
float | 4字节32位浮点数 | 1.4E-45~3.4E+38, -1.4E-45~-3.4E+38 |
double | 8字节64位浮点数 | 4.9E-324~1.7E+308, -4.9E-324~-1.7E+308 |
基本数据类型的转换
在Java程序中,不同的基本类型的值经常需要进行相互转换。Java语言提供的7种数据类型之间可以相互转换,有两种类型转换方式:自动类型转换和强制类型转换。
自动类型转换(隐式类型转换):
byte->short short、char->int->long->float->double
即表数范围小的可以向表数范围大的进行自动类型转换。
例如:byte b = 3;
int x = b; //b自动转换成int型
强制类型转换(显示类型转换):
例如:byte a;
int b;
a = (byte) b; // 强制转换
强制转换时当心丢失数据或失真。
结论:
Ø 相同类型的变量、常数运算,结果还是原类型
Ø 不同类型的变量、常数运算,结果的类型为参与运算的类型中精度最高者
Ø 表达式的数据类型自动提升规则
Ø byte,short,char型的值被提升int型
Ø 其中一个操作数为long型,结果为long型
Ø 其中一个操作数为float型,结果为float型
其中一个操作数为double型,结果为double型