java 基础知识1
javac 运行 .java 文件
java 运行 .class 文件
在表达式中小范围变量自动转换为较大范围变量进行计算,结果类型由最高的类型决定,byte char short 自动转换为 int 计算,float 转换为 double 计算。
浮点型强转为整型,丢掉小数部分,直接返回整数部分。
两个整数相除,结果是整数,因为最高类型是整数。
‘+’ 作为字符串拼接符,能算就计算,不能算就连在一起。
+= 、-=、*=... 是扩展赋值运算符,涉及了强制类型转换(a += b ====> a = (a 的数据类型) (a + b))
^ 逻辑异或,不同返回true ,相同返回false,也可为运算符进行二进制运算, && || ,前面成立后面不执行。& | 按位运算符,将数转为二进制进行逻辑判断,>> << 移位运算,将数转为二进制进行移位,如 5 >> 2 ===> 0000 0000 0000 0101 ===> 0000 0000 0000 0001 变为了1,符号位不参与运算,等价于 5 / (2 *2) 。 ~ 取反运算符,转换为二进制 0 1 取反运算,>>> 无符号移位运算,符号位也参与移位。
三元运算符也根据表达式最高位类型来得到结果的类型。如 true ? 3:5.4 ===> 3.0
& 优先级高于 |

String,System 是 java.lang 包下的,lang 包是默认的包,不需要导包。
Scanner 中 next() 是接收第一个空格符之前的数据(此前需要有数据),而 nextLine() 是接收一行数据,第一个回车符之前的数据。
Switch 表达式类型只能是 byte,short,char,int,String,枚举,不支持 double,float,long。case 中的值不能重复,只能是字面量,不能是变量。
for(初始化语句;循环条件;迭代语句) 先执行一次初始化语句,然后判断循环条件,执行循环语句,再执行迭代语句,再判断循环条件。

数组 class 类型是 [... ,数组中元素默认值有0 0.0 false null

浙公网安备 33010602011771号