java基础语法2
一,进制转换
数值型的表现形式
整型:
进制: 满几进一
二进制 : 只能有0,1组成 通过0b|0B开头
八进制 : 只能0~7组成 通过0开头
十进制 : 默认
十六进制 : 由0~9,a~f任意组合而成(不区分大小写) 通过0x开头
其他进制转为十进制:
从右往左,每一位的数值*进制数^次方从0开始,每次+1 ,最后求和就是对应的十进制数据
十进制转为其他进制:
//二进制转十进制
//r1为个位,r2为十位,r3为百位...以此类推
r1*2^0 + r2*2^1 + r3*2^2 + r4*2^3 +...+rn*2^(n-1);
例:
110101
=1*2^0 + 0*2^1 + 1*2^2 + 1*2^4 + 1*2^5
=53
//其他进制同理
使用当前的十进制数据,不停的除以要转为的进制数,得到结果为0就不除了,得到最终的余数,从下往上看结果
浮点型:
0.5->.5 0可以省略
科学计数法 : e|E-> 10
0.12E3 ->0.12*10^3
0.12E-3 ->0.12/10^3
二,常量
java中的常量:
java程序执行过程中,值不会发生改变的量
自定义常量
final关键字修饰的变量为常量
注意: 驼峰命名规范
字面值常量
整数常量 : 1 -5 100…
小数常量 : 1.1 -0.5 …
布尔常量 : false true
字符常量 : ‘a’ ‘1’ ‘中’ ’ ’
字符串常量 : " " “abc”
final int A = 1;//A就是一个常量,常量名全部大写
三,数据类型转换
数据类型转换:
boolean 类型不参与类型转换
自动类型提升
大范围数据类型 变量 = 小范围类型的数据;
byte b1 = 100;
short s1 = b1;//short的范围比byte大,将b1赋值给s1能自动将b1的数据类型变成short类型
强制类型转换
小范围数据类型 变量 = (小范围数据类型)大范围数据数据;
int a = 100;
short s1 = (short)a;//short的范围小于int的范围,将int类型转换成short类型需要强制转换
注意:
对应类型的数据赋值给对应类型的变量
强制转型发生在赋值之前
如果多种数据类型的数据参与运算,最终的结果为参与运算中的最大数据类型
如果运算后最大的类型小于int类型,会自动提升成为int
byte b = 100;
short s = 100;
short sum =