《Java编程思想》读书笔记——字符串

Java编程思想可以证明,字符串操作时计算机程序设计中最常见的行为。

String对象是不可变的。查看JDK文档你就会发现,String类中每一个看起来会修改String值的方法,实际上都是创建了一个全新的String对象,以包含修改后的字符串内容。而最初的String对象则丝毫未动。

P283

每当把String对象作为方法的参数时,都会复制一份引用,而该引用所指的对象其实一直待在单一的物理位置上,从未动过。

P283

String对象是不可变的,你可以给一个String对象加任意多的别名。因为String对象具有只读特性,所以指向它的任何引用都不可能改变它的值,因此,也就不会对其他的引用有什么影响。

不可变性会带来一定的效率问题。为String对象重载的“+”操作符就是一个例子。重载的意思是,一个操作符在应用于特定的类时,被赋予了特殊的意义(用于String的“+”与“+=”是Java中仅有的两个重载过的操作符,而Java并不允许程序员重载任何操作符)。

P283

Scanner有一个假设,在输入结束时会抛出IOException,所以Scanner会把IOException吞掉。不过,通过ioException()方法,你可以找到最近发生的异常,因此,你可以在必要时检查它。

P310

 

发表评论

您的电子邮箱地址不会被公开。