常量和变量
常量:指程序中一直不变的值,并且在程序运行过程中是不可改变的;
整形数值:3,5,200
浮点型数值:1.2f , 3.14
布尔型数值:true,false
字符型数值:‘a’,‘中’
变量:指程序运行过程中随时可以改变的量;是内存中的一块存储区域,用来存储不确定的数值;
为什么需要定义变量?
因为在程序的运行过程中,我们需要变量来存储不确定的数值;
变量的声明格式:
数据类型 变量名 [= 初始值] ;
基础数据类型与引用数据类型
基础数据类型:
整型:
byte 1个字节 8个二进制位 取值范围:-2^7 ~~ 2^7-1;
short 2个字节 16个 取值范围:-2^15 ~~ 2^15-1;
int 4个字节 32个 取值范围:-2^31 ~~ 2^31-1;
long 8个字节 63个 取值范围:-2^63 ~~ 2^63-1;
如果计算机中的数值要使用long类型进行保存,需要在数值后加上L;
浮点型:
float 4个字节 单精度
如果计算机中的数值要使用float类型进行保存,需要在数值后加上F;
double 8个字节 双精度
字符型:
char 2个字节
布尔型:
boolean true false
变量的作用域:作用域就是作用的范围,实际指的就是 { };
从变量的声明开始到变量所属的大括号结束;
变量在声明时,可以没有初始值,但在使用之前必须赋初始值;
数据类型之间的转换:
自动数据类型转换:在数据进行运算时,需要保证参与数据运算的数据类型必须一致;
如果不一致,编译器会自动将低的数据类型向高的数据类型进行自动转换;
强制数据类型转换:
(数据类型)变量;
char类型与int类型进行运算是可以的,因为char类型可以根据unicode表转换成int类型,然后在进行运算;
引用数据类型:
类:class;
接口:interface;
数组;
类和接口,可以是我们自己定义的,也可以是java提供的;
总结
观察发现,基本数据类型都是小写的,引用数据类型都是大写的;
基本数据类型八大类,声明后java会立刻为其分配内存空间;
引用数据类型指向的并不是数据本身,而是它所分配的内存地址;
一般来讲,基本数据类型存储在栈中,引用数据类型存储在堆中;
Java数据类型图: