`

关于StringBuffer对象的append方法介绍

JDK 
阅读更多
关于StringBuffer对象的append方法介绍
关于StringBuffer对象的append方法介绍,在Ivor Horton所著的《Java 2 入门经典(JDK 5)》(英文名:Beginning Java 2,JDK 5 Edition)中第4章数组和字符串讲解中,第4.4小节(向StringBuffer对象增加其他内容)介绍了用append()方法追加子串的功能。原文提供例子如下:    StringBuffer buf=new StringBuffer("Hard ");    String aString = "Waxworks";    buf.append(aString,3,4);原文说明:这个操作将aString的从索引位置3开始的由四个字符组成的子串追加到StringBuffer对象buf中。然后buf对象就会包含字符 串"Hard work"。请注意,这个代码的实际运行结果是: buf对象包含的字符串为"Hard w"。根据运行结果分析,StringBuffer对象的append()方法的参数,如果是String类型,那么,后面取子串的操作实际是从索引3开始,取值到索引4之前的串。如果append的语句改成 buf.append(aString,3,3); ,那么没有添加aString的子串,即 buf包含的字符实际还是"Hard "。如果此语句再改成 buf.append(aString3,2); ,那么系统会抛出"IndexOutOfBoundsException"的异常!但是,如果append()的参数是字符数组(char[]),那么结果就如原文所述,buf将包含串"Hard work". 代码如下:    StringBuffer buf=new StringBuffer("Hard ");     char[] text ={'W','a','x','w','o','r','k','s'};    buf.append(text ,3,4);   // buf包含串"Hard work" 
分享到:
评论

相关推荐

    Java中StringBuffer对象的初始化.pdf

    初始化StringBuffer对象** 创建`StringBuffer`对象主要有两种方式: - **无参数构造器**:`StringBuffer s = new StringBuffer();` 这将创建一个空的`StringBuffer`对象,初始容量通常是16个字符。 - **带参数...

    Java中StringBuffer的常用方法.pdf

    这个方法允许我们向StringBuffer对象的末尾添加任何类型的数据,包括字符串、字符、数字等。当我们需要构建一个字符串,并且在这个过程中需要不断地追加内容时,append方法就显得非常有用。例如,如果你正在创建一个...

    java高级特性StringBuffer类.doc

    Java 高级特性 StringBuffer ...append 方法是 StringBuffer 类中的一种常用方法,该方法的作用是追加内容到当前 StringBuffer 对象的末尾,类似于字符串的连接。调用该方法以后,StringBuffer 对象的内容也发生改变。

    StringBuffer类的总结

    2. **追加内容**:使用 `append()` 方法可以将指定的内容添加到 `StringBuffer` 的末尾。 ```java sb.append("要追加的字符串"); ``` 3. **插入内容**:使用 `insert()` 方法可以在指定位置插入内容。 ```java ...

    String、StringBuffer、StringBuilder的使用方法

    它的内部机制与`String`类似,但是提供了`append()`和`insert()`等方法来改变字符串内容,而不会每次都创建新对象。例如: ```java StringBuffer sb = new StringBuffer("Hello"); sb.append(" World"); // 不会...

    String ,StringBuffer与StringBuilder

    向 StringBuffer 中赋值可以通过它的 append 方法,例如 sb.append("hello");。 在字符串连接操作中,StringBuffer 的效率要比 String 高。例如,String str = new String("welcome to ");str += "here";的处理步骤...

    String和StringBuffer详细用法总结

    在这两个例子中,第一个使用了`+`运算符进行字符串拼接,第二个使用了`StringBuffer`的`append()`方法。后者在循环或大量字符串拼接时效率更高。 #### 示例2 ```java public String getString(String s1, String s2...

    StringBuffer

    8. **`append(String str)`**, **`append(int num)`**, **`append(Object obj)`** - 在`StringBuffer`的末尾追加一个字符串、整数或任意对象的字符串表示。 9. **`insert(int index, String str)`**, **`insert(int ...

    String与StringBuffer区别详解

    而StringBuffer示例中,使用append方法实际上是在修改原有对象的内容,并且这种修改会反映在所有指向这个StringBuffer对象的引用上。 为了进一步理解二者的差异,我们可以通过String和StringBuffer的内存使用和操作...

    java基础知识总结.doc

    StringBuffer 是线程安全的,关于线程的概念后续有专门的章节进行介绍,所以在多线程程序中也可以很方便的进行使用,但是程序的执行效率相对来说就要稍微慢一些。 StringBuffer 是一种非常重要的 Java 基础知识,...

    Java语言中StringBuffer的用法

    在多线程环境下,`StringBuffer`的方法如`append()`和`insert()`都是同步的,保证了线程安全。 接下来,我们详细讲解`StringBuffer`的一些关键方法: 1. **append()**:此方法用于在现有字符串末尾添加新的字符...

    String&Stringbuffer

    相比于`String`,`StringBuffer`支持对其内部字符序列进行添加、删除或替换等操作,且这些操作不会产生新的对象,而是直接在原对象上进行修改。由于`StringBuffer`的线程安全特性,它非常适合多线程环境下的字符串...

    Java中StringBuffer类.pdf

    1. `public synchronized StringBuffer append(String s)` - 在`StringBuffer`对象的末尾添加字符串`s`,并返回修改后的`StringBuffer`对象自身,这使得可以链式调用多个`append`方法。 2. `public synchronized ...

    JAVA的StringBuffer类.docx

    StringBuffer对象的初始化 `StringBuffer`对象可以通过构造方法来初始化。无参数的构造方法创建一个空的`StringBuffer`,而传入字符串的构造方法则会创建包含指定字符串内容的`StringBuffer`。例如: ```java ...

    java之StringBuffer常见使用方法解析

    下面,我们将详细介绍StringBuffer类的使用方法和应用场景。 什么是StringBuffer类? StringBuffer类是一个字符串缓冲区类,用于存储字符的集合容器。它的主要特点是可以对字符串进行修改,而不会像String类那样...

    Android StringBuffer的使用方法详解

    String对象与StringBuffer对象之间可以通过构造函数和`toString`方法进行转换。例如: ```java String str = "String"; StringBuffer sb = new StringBuffer(str); String newStr = sb.toString(); ``` 总结...

    java基础--4.常用类-3.StringBuffer、StringBuilder

    `StringBuffer`和`StringBuilder`提供了`append()`方法,可以将任意类型的数据转换为字符串并追加到已有字符串的末尾。 - 例如,`stringBuffer.append("Hello").append(" ").append("World");`将创建一个"Hello ...

    String和StringBuffer的区别

    `StringBuffer`提供了`append()`方法来方便地追加内容,如`sb.append("hello")`。由于不涉及新的对象创建,`StringBuffer`在处理大量字符串拼接时效率远高于`String`。 在上述代码示例中,我们比较了使用`String`和...

    StringBuffer和String_区别

    return new StringBuffer().append(s1).append(s2); // 使用 StringBuffer } ``` 这里可以看出,虽然两种方式都可以实现字符串拼接,但是使用 StringBuffer 的方式在多线程环境中更安全。 3. **循环中的字符串...

Global site tag (gtag.js) - Google Analytics