`

String学习(1)_ThinkingInJava

阅读更多

                String学习_ThinkingInJava

  String对象是不可变的,String类中貌似修改String的方法其实都是创建了一个全新的String对象。
因为String具有不可变的特性,因此开销要大一些。因此,简单的拼接字符串可以用(+)运算符,但构
造复杂的字符串时(典型的情况是在循环中result += someStringArray[i]),一定要使用StringBuilder
或StringBuffer.StringBuffer是线程安全的,而StringBuilder是java5引入的比较新的api.这个结论其
实在很久以前我就做过测试,只是近期从Thinking in Java上又看到了。
  文中,作者说当把一个字符串的引用q传递给某个方法时,实际上传递的是此引用的一个拷贝q1,而引
用所指向的字符串对象则在其物理位置中丝毫未动。可是,传递这个引用的拷贝和直接传递这个引用又有
什么区别呢?我没有理解。期待先闻道者指点迷津吧。
  小贴士:javap -c Concatenation 可以将java源码反编译为JVM上的汇编

分享到:
评论

相关推荐

    study_ThinkinginJava_

    根据提供的信息,“study_ThinkinginJava_”压缩包文件包含了你在阅读这本书时所做的课后练习题和笔记,这将是一个宝贵的自我学习和复习资源。 在《Thinking in Java》中,你可以找到以下关键知识点: 1. **基础...

    thinking-in-java_java_in_ThinkinginJava_

    1. **基础语法**:包括数据类型、变量、运算符、控制结构(如if-else,switch,for,while循环)以及方法的定义和调用。 2. **类与对象**:Java是一种面向对象的语言,书中详细讲解了类的定义、对象的创建和销毁,...

    TIJ4-code_ThinkinginJava_conversationemk_

    1. **基础语法**:压缩包中的代码会涵盖Java的基础语法,包括数据类型、变量、运算符、流程控制(如if-else、switch、for、while循环)以及方法定义和调用。 2. **类与对象**:作为面向对象编程的语言,Java的类和...

    《java编程思想》_java编程思想_java编程思想_ThinkinginJava_mileefx_

    1. **面向对象编程**:Java是一种完全面向对象的语言,书中详细介绍了类、对象、封装、继承、多态等核心概念。学习者应理解如何创建和使用类,以及如何通过继承和多态来实现代码复用和模块化设计。 2. **异常处理**...

    ThinkingInJava

    ThinkingInJava

    java学习笔记(ThinkinginJava).pdf

    java学习笔记(ThinkinginJava).pdf

    java学习笔记(ThinkinginJava)汇编.pdf

    java学习笔记(ThinkinginJava)汇编.pdf

    ThinkinginJava

    ThinkinginJava cn.chm

    ThinkingInJava_java_

    1. **基础语法**:包括变量、数据类型、运算符、流程控制语句(如if、for、while、switch)、方法等。这些都是编写任何程序的基础。 2. **类与对象**:这是Java的核心,也是面向对象编程的基础。你需要理解类的定义...

    thinkinginjava

    讲解java的图书

    ThinkingInJava-3rd-code.rar

    这本书的第三版(3rd edition)配套代码库"ThinkingInJava-3rd-edition-code"为读者提供了丰富的实践示例,帮助理解书中的理论知识。 1. **面向对象编程基础**:Java是一种面向对象的语言,它支持类、对象、继承、...

Global site tag (gtag.js) - Google Analytics