java编程思想是作为一个java程序员不可不读的葵花宝典。这次我总结了一些自己容易进的误区分享给大家:
1、System.out.println(100++); -- 编译时异常
100++所代表的意思是:100 = 100 + 1;所以当然会报异常,++/--这种符号只能给变量使用。
2、int a = 1;
System.out.println(a++); -- 输出:1
++/--分为前缀式和后缀式,前缀式是先运算再生成值,后缀式是先生成值再进行运算。
3、Integer a = new Integer(1);
Integer b = new Integer(1);
System.out.println(a == b); -- 输出:false
包装类类似String,需要使用equals来判断相等。而判断对象相等则需要在对象中使用@override注释来重写equals方法,然后就可以通过调用该对象的equals方法来比较相等了。
4、短路
当使用逻辑与&&时,若前一个判断返回的是false那么之后的判断不会被执行。这样可以提高效率,所以使用&&比使用||好。
5、System.out.println((int)2.6); -- 输出:2
float或double转整型时,都会对数字进行结尾,而不是四舍五入,若是需要四舍五入,则需要使用Math的round()方法。
例:System.out.println(Math.round(2.6)); -- 输出:3
6、short a = 1;
short b = a+a; -- 编译时错误
java在进行运算时,比int小的类型(short,byte,char)在运算之前会自动转为int,然后进行运算,所以得到的结果一定是int。需要对结果进行类型转换。
7、int i = 5;
System.out.println(i!=null); -- 编译时错误
int型变量无法和null比较,但Integer可以,所以我们定义整型常量的时候,最好使用Integer,可以避免一些错误。