变量
变量是命了名的内存空间,空间的内容会随着业务需要发生变化。通过用新数据替换老数据达到内存空间重用的目的。
变量的三要素:数据类型、变量名、变量值
常量
常量也是内存中命名了的内存空间,空间的内容在运行期间不能发生变化。
分类
字面常量
8---整型常量
‘A’---字符常量
“abc” ---字符串常量
符号常量
final int PRICE =3;
定义符号常量的意义
1.可以在运算时,引入业务名称
2.可以做到一改全改
基本数据类型
整型
byte:字节型 占1字节 取值 -128~127
一个字节占八位二进制码,1k=1024字节,1M=1024k,1G=1024M,1T=1024G
short:短整型 占2字节
int 整型 占4字节
long 长整型 占8字节
浮点型
float:单精度浮点型 占4字节
duoble :双精度浮点型 占8字节
字符型
char 占2字节
字符型底层以整型方式存放。采用unicode编码,允许存放一个中文字符。一个字符型数据中,只能放一个字符。
‘A’----65 ‘a’ -----97
字符型数据可以做算法运算,运算时,将字符数据的ASC码进行运算。
布尔类型
boolean
取值只有true和false。表示某个条件是否成立
将字符串转化为int
int i = Integer.parseInt("3");
将字符串转换成double
double d = Double.parseDouble("3.2");
类型转换
自动类型转换
自动类型转换发生在不同类型数据之间进行运算时,小类型的数据自动提升为大类型数据。
浮点型常量默认为double类型,不能直接赋值给float变量 float a = 3.5f;
整型和整型运算,结果至少是int类型。无论是byte+byte、 short+short 还是 byte+short,结果都是int类型
float类型大于long类型,其他的大多可以看字节数来比较大小,boolean不能比较。
强制类型转换
一般发生在大类型转小类型时,可能会损失精度
语法
int a = (int) 3.5f;
boolean类型不能强转为任何类型
注意:变量没有赋值(初始化)时是不能使用的