一、每一个java文件只能有一个public类,该类名字必须和文件名一致
二、long表示的范围没float大
三、byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型(两个char相加是int)
四、boolean类型不能与其它数据类型运算
五、当把任何基本数据类型的值和字符串(String)进行连接运算时(+),基本数据类型的值将自动转化为字符串(String)类型
六、初始化时String不能赋数值
String str=10;//错误
七、取余运算结果符号和被除数符号一样
int a=10,b=3; a%b //结果为1 (-a)%b //结果为-1 a%(-b) //结果为1 (-a)%(-b)//结果为-1
八、复合运算符不改变数据类型+=、-=、*=、/=等等
short a=1; a = a + 1; //编译时出错,参考三 a++; //正确 a+=1; //正确 a*=0.1; //正确,结果为0,a类型不变
九、
int n=10; n+=(n++)+(++n); //理解成n=n+(n++)+(++n),结果为32
十、&与&&区别
当两者两边都是boolean时,&两边都会运算完,&&只要第一个为false,第二个就不运算
十一、
<<低位补0
>>如果最高位是0,补0,最高位是1,补1
>>>都补0



