Thinking in Java第三版读书笔记-第三章:流程控制

来源:互联网 发布:锐捷查看网络接口 编辑:程序博客网 时间:2024/05/18 06:19

第三章:流程控制

1、几乎所有的运算符都只能作用于primitive。但“=”、“==”、“!=”是例外,它们可以运用于所有对象,此外,String类也支持“+”和“+=”。
   (chap3,P2)

2、Reference变量的赋值,会使表达式左边的reference丢失原来的对象,原来的对象成了没有reference的内存垃圾。
   (chap3,P3)

3、Java的书籍总是强调Java没有地址传递,但我觉得reference传递就是地址传递。

4、Integer n1 = new Integer(47);
   Integer n2 = new Integer(47);
   System.out.println(n1.equals(n2));
   打印的结果是true,不要认为理所当然就是这样,其实,equals比较的是reference,这里是两个reference,显然不会相等,之所以输出true,是因为Integer类中已经对equals函数
   做了处理,如果是自己写的类,而没有重载equals,那么打印的肯定是false。
   (chap3,P11)

5、Java提供了位操作符,但我觉得没有必要使用它。
   (chap3,P15)

6、在Java中,逗号运算符只能用在for循环中。
   (chap3,P37)

7、switch只能用char、byte、short、int。
   (chap3,P43)

原创粉丝点击