学习记录2java的数据类型、常量、变量
java的数据类型
基本类型
数值类型
整数类型:byte int shout long
浮点数类型:foult double
字符型:char
boolean类型
只反映正误,
字符串 String不是关键字,是类
(为了便于计算机区分,long型数值后面加“L,float型数值后加“F”)
引用数据类型
类
接口
数组
二进制数值以0b开头,八进制数值以0开头,十六进制以0x开头
浮点数:有限 离散 舍入误差 大约,进而导致数据精度降低和内存溢出
float后面必须加上f,1.3e6代表1.3*106
当比较时最好完全用浮点数比较
当数据进行运算且不可以出现误差时,用类BigDecimal(数学工具类),用于银行数据计算
所有字符串的本质还是数字,Unicode编码表(u0000-uFFFF),0-65536,各数字都有对应的符号,而这个符号可以是汉字或字母或符号
String sa = new String(original:"hellow"):
String sb = new String(original:"hellow"):
System.out.print(sa = sb)😕/true
String sc = "hellow":
String sd = "hellow":
System.out.print(sc = sd)😕/false
从内存分析。
类型转换
int i = 128;
byte b = (byte)i;
此时i = 128,但b = -128。
原因:byte型的数值范围是(-128--127),而i为128,出现了内存溢出,强制转换时避免出现内存溢出的问题。
注意点:
- 不能对布尔类型进行类型转换
- 不能把对象类型转换为不相干的类型
- 高容量转换低容量是强制转换(银行资金计算容易出现的问题)
- 转换时避免出现内存溢出
操作比较大的数值时,数字间可以用下划线隔开,10_0000_0000
int money = 1000000000;
int year = 20;
int total = moneyyear;//结果为-147……,原因是内存溢出
long total2 = moneyyear;//结果为-147……,原因是,这里的自动转换是先算出结果在进行转换,而在转换之前这个结果已经错了
应该long total3 = money*((long)year);//先把参与的数值转换,进而提高整个式子的量级
变量、常量
变量
可以变化的量
JAVA语言是强制语言,每个变量必须声明其类型
JAVA变量是程序中最基本的存储单元,其要素包括变量名、变量类型、作用域
命名规范
- 变量名、方法名、类名要见名知意
- 类成员变量:首字母小写和骆驼峰原则,除第一个单词,后面的单词首字母大写 allClicks
- 常量:大写字母和下划线 MAX_VALUE
- 类名:首字母大写和骆驼峰原则 Man,GoodMan
- 局部变量:首字母小写和骆驼峰原则
- 方法名:首字母小写和骆驼峰原则
字符常量

修饰与位置
常量用final修饰 final 常量名 = 值
类变量用static修饰 static int allClicks = 0,位置在方法外,类里面(实例变量也是)
局部变量在方法里面

浙公网安备 33010602011771号