`
coderzhcn
  • 浏览: 20108 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

String与StringBuffer的异同点

 
阅读更多

String类型:

String的字符串长度是不可变的,

String s1="abc"; s1="def";

只是s1的引用指向的位置发生改变,“abc”对象在堆内存中依然存在,Java的垃圾回收机制到时候会回收回去,

对于经常检索的字符串,使用String类型合适,效率高

常用的方法有charAt()、indexOf 、subString()

StringBuffer类型:

StringBuffer声明的对象字符串的长度是可变的,

当重新给声明的对象继续添加字符串时,堆内存中的地址并未发生变化,只是内容改变而已;

对于经常修改的字符串类型,使用合适,

StringBuffer buffer = new StringBuffer(“abc”) ;

常用的方法有:buffer.append()、buffer.insertChar()、buffer.deleteChar();

StringBuffer是一个JDK的类型,String是基本的引用对象类型

String str1= new String("abc");

StringBuffer buffer = new StringBuffer(str1);

String str2 = buffer.toString();

String和StringBuffer之间可以相互转换。

分享到:
评论

相关推荐

    Java String StringBuilder StringBuffer

     它们的异同点:  1) 都是 final 类, 都不允许被继承;  2) String 长度是不可变的, StringBuffer、StringBuilder 长度是可变的;  3) StringBuffer 是线程安全的, StringBuilder 不是线程安全的。  ...

    java面试宝典

    23、String 和StringBuffer 的区别? 10 24、String, StringBuffer StringBuilder 的区别。 10 25、Overload 和Override 的区别。Overloaded 的方法是否可以改变返回值的类型? 10 27、描述一下JVM 加载class 文件的...

    Java面试题必备——Java基础知识部分汇

    本文总结了Java基础知识部分的重要知识点,涵盖了Java面试中常见的问题,包括作用域、String类、int和Integer的区别、String和StringBuffer的区别、运行时异常与一般异常的异同、Servlet的生命周期、ArrayList、...

    java笔试大全(绝对经典)

    本资源摘要信息涵盖了 Java 面试中常见的知识点,包括面向对象的特征、异常处理、String 和 StringBuffer 的区别、Servlet 的生命周期等。 1. 面向对象的特征 面向对象的特征包括:抽象、继承、封装、多态性。 * ...

    JAVA面试题集.doc

    本文档是一个 JAVA 面试题集,涵盖了 JAVA 相关基础知识点,包括面向对象的特征、String 和 StringBuffer 的区别、运行时异常与一般异常的异同、Servlet 的生命周期、ArrayList, Vector, LinkedList 的存储性能和...

    IBM公司JAVA程序员笔试面试题汇总及答案 0.doc

    涉及面向对象编程、Java 基础知识、String 和 StringBuffer 的区别、运行时异常与一般异常的异同、Servlet 生命周期、ArrayList, Vector, LinkedList 的存储性能和特性、EJB 等方面的知识点。 1. 面向对象编程: ...

    华为java面试题华为面试题绝对精辟

    5. 运行时异常与一般异常有何异同?运行时异常是指在虚拟机的通常操作中可能遇到的异常,而一般异常是指编译器要求方法必须声明抛出的非运行时异常。 Java 核心类 6. 说出一些常用的类、包、接口,请各举 5 个。 ...

    常见Java面试题汇总.pdf

    五、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。Java 编译器要求方法必须声明抛出可能发生的非运行时...

    华为JAVA面试题

    以上是根据华为2018年深圳Java面试题的相关内容总结的知识点,涵盖了Java中的修饰符、字符串类的使用和性能、静态与实例变量、继承与接口的概念和区别、集合框架中HashMap与Hashtable的异同以及抽象类与接口的对比。...

    JAVA面试笔试题汇总

    - **异同点**: - 都是程序执行中的异常情况。 - 运行时异常不需要在方法中声明。 #### 五、Servlet生命周期及与CGI的区别 9. **Servlet的生命周期**: - 初始化:`init()`方法。 - 请求处理:`service()`...

    JAVA基础面试题(带答案的)

    StringBuffer 与 String 的区别 `StringBuffer` 和 `String` 都可以用来处理字符串,但它们之间存在显著差异: - **可变性**:`String` 是不可变的,而 `StringBuffer` 是可变的。这意味着 `String` 对象一旦创建...

    java面试题

    - **异同点**: - **相同点**:两者都是 `Exception` 类的子类。 - **不同点**: - 运行时异常不需要在方法签名中声明,而非运行时异常则需要。 - 运行时异常通常是无法预见的编程错误,而非运行时异常通常是...

    java 120问(让你从容面对java笔试,面试)

    5. 运行时异常与一般异常的异同 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。Java 编译器要求方法必须声明抛出可能发生的非运行时异常,...

    程序员面试之葵花宝典

    - **异同点**:运行时异常在编译时不会检查;而一般异常需要显式处理或声明抛出。 #### 五、Servlet生命周期及与CGI的区别 **1. Servlet生命周期** - **初始化**:`init()`方法在Servlet首次加载时被调用。 - **...

    计算机专业各大公司面试题

    String与StringBuffer的区别 - **题目示例**:“String和StringBuffer的区别” - **知识点解析**:`String`对象是不可变的,一旦创建就不能改变其内容。而`StringBuffer`是可变的,可以在原有基础上进行修改,适用...

    JAVA程序员面试《葵花宝典》

    4. **String与StringBuffer的区别** - `String`是不可变对象,一旦创建就不能修改;`StringBuffer`(或`StringBuilder`)是可变的,适合在字符串拼接或修改时使用,以提高性能。 5. **运行时异常与一般异常的异同*...

    JavaSE.docx

    JavaSE/docx JavaSE 是 Java 标准版,涵盖...* equals 和 == 的异同点 * Integer 和 int 的区别 * String、StringBuffer 和 StringBuilder 的异同 * Java 数组与集合的比较 * ArrayList 与 LinkedList 的比较存储结构

    J2se面试题

    ### J2SE面试题知识点详解 #### 一、面向对象的特征 面向对象编程(OOP)是现代软件开发中一种...此外,了解`String`与`StringBuffer`之间的差异以及运行时异常与一般异常的区别对于编写健壮、高效的Java程序至关重要。

    Java程序员面试题

    5. 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。Java 编译器要求方法必须声明抛出可能发生的非运行时异常...

Global site tag (gtag.js) - Google Analytics