Thinking in Java 第十三章字符串读书笔记

1.String 对象是不可变的,而 JDK 中每一个看起来会修改 String 的方法,实际上都是创建了一个全新的 String,而最初的 String 对象则丝毫未动。

2.当我们将 String 作为方法参数传入时,实际上传递的是引用的一个拷贝。

3.对于一个方法而言,参数是为该方法提供信息的,而不是想让该方法改变自己。

4.String 对象具有只读性,所以只想它的任何引用都不可能改变它的值。

5.我们都是用 "+" 来拼接两个字符串,而编译器其实自动引入了 StringBuilder 来帮我们进行拼接,例如以下代码:

//  编译器底层调用了 StringBuilder 的 append() 然后调用了四次后,调用 toString 返回结果
String s = "abc" + "mango" + "def" + 47;

6.无意识的递归,重写 toString() 中使用 this,使得 this 隐式调用 toString(),从而陷入循环,如果想打印地址在应该调用 super.toString()。

正则表达是暂时跳过还未看。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,874评论 18 399
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 1,554评论 0 3
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,281评论 0 4
  • 多态 任何域的访问操作都将有编译器解析,如果某个方法是静态的,它的行为就不具有多态性 java默认对象的销毁顺序与...
    yueyue_projects阅读 1,007评论 0 1
  • 记得读书时每次上语文课都要背诵古诗。老师点到谁的名字谁就要站起来背诵,背不出来就站着,直到能背出来为止,否则就站到...
    入兴贵贤阅读 485评论 0 1