1:String 与StringBuffer的区别
String:在String类中没有用来改变已有字符串中的某个字符的方法,由于不能改变一个java字符串中的某个单独
字符,所以在JDK文档中称String类的对象是不可改变的。然而,不可改变的字符串具有一个很大的优点:编译器可
以把字符串设为共享的。
StringBuffer:StringBuffer类属于一种辅助类,可预先分配指定长度的内存块建立一个字符串缓冲区。这样使用
StringBuffer类的append方法追加字符 比 String使用 + 操作符添加字符 到 一个已经存在的字符串后面有效率得
多。因为使用 + 操作符每一次将字符添加到一个字符串中去时,字符串对象都需要寻找一个新的内存空间来容纳更大
的字符串,这无凝是一个非常消耗时间的操作。添加多个字符也就意味着要一次又一次的对字符串重新分配内存。使
用StringBuffer类就避免了这个问题.
2:StringBuffer类常用方法简介
StringBuffer类用于处理可变的字符串,它提供修改字符串的方法。
(1)构造方法:
a. StringBuffer s0=new StringBuffer();分配了长16字节的字符缓冲区
b. StringBuffer s1=new StringBuffer(512);分配了512字节的字符缓冲区
c. StringBuffer s2=new StringBuffer("You are good!");
在字符缓冲区中存放字符串"Happy new year!",另外,后面再留了16字节的空缓冲区。
(2) 常用方法:
a.字符设置和替换
setCharAt(int index,char ch),将指定的字符ch放到index指出的位置。
charAt(int index) 获得指定位置的字符
例如:
s="stedent";
s.setCharAt(2,"u"),则s为"student"
b.字符的插入
insert(int offset,char ch),在offset位置插入字符ch。
例如:
StringBuffer s=new StringBuffer("wecome");
s.insert(2,'l'),则s为"welcome"
c.在字符串末尾添加内容(Append方法)
StringBuffer s=newStringBuffer("we");
char d={"l","c","o","m","e"};
s.append(d);则s为"welcome"。
d.转换为不变字符串:toString()。
e.获取字符串的长度: length()
StringBuffer s = new StringBuffer("www");
int i=s.length();
f.获取字符串的容量
s.capacity();
g.重新设置字符串容量的大小:ensureCapacity()
s.ensureCapacity(100);
h.设置字符串缓冲区的大小
s.setlength(10);
如果用小于当前字符串长度的值调用setlength()方法,则新长度后面的字符将丢失。
i.将字符串的子字符串复制给数组
getChars(int start,int end,char chars[],int charsStart)
String s1 = "This is a test";
int start =0;
int end = 10;
char ch1[] = new char[end-start];
s1.getChars(start,end,ch1,0);
System.out.println(ch1);
j.字符串反转
s.reverse();
k.删除指定字符串着中的字符
delete(int start,int end)
s.delete(0,s.length()); //删除字符串s的全部字符
deleteCharAt(int index)
s.deleteCharAt(4); //删除字符串s索引为4的字符
l.替换字符串
replace(int start,int end,String str)
s.replace(0,1,"qqq");
m.返回字符串的一部分值
substring(int start) //返回从start下标开始以后的字符串
substring(int start,int end) //返回从start到 end-1字符串
分享到:
相关推荐
JAVA StringBuffer类与StringTokenizer类代码解析 JAVA StringBuffer类是Java语言中的一种字符串处理类,提供了一个字符串的可变序列,类似于String类,但它对存储的字符序列可以任意修改,使用起来比String类灵活...
在Java编程语言中,`StringBuffer`类是一个非常重要的工具,尤其在处理字符串连接操作时。相较于`String`类,`StringBuffer`提供了线程安全的动态字符串构建,避免了频繁创建新对象带来的性能开销。本文将深入探讨`...
【JAVA的StringBuffer类】 Java中的`StringBuffer`类是一个非常重要的工具,特别是在处理字符串时需要频繁进行修改的情况。与`String`类不同,`StringBuffer`不会在每次修改时创建新的对象,从而减少了内存开销,...
Java 高级特性 StringBuffer 类 Java 高级特性中,StringBuffer 类是一个非常重要的类,它和 String 类一样用来代表字符串,但是由于内部实现方式的不同,StringBuffer 在进行字符串处理时,不生成新的对象,在内存...
Java中的`StringBuffer`类和`StringBuilder`类都是用来处理可变字符串的,它们提供了在字符串操作中添加、删除、替换和截取等方法。这两个类的主要区别在于线程安全性,`StringBuffer`是线程安全的,而`...
`StringBuffer` 是 Java 中一个非常重要的类,它被设计用于处理字符串数据时提供高效的支持。相比于 `String` 类,`StringBuffer` 提供了更好的性能表现,尤其是在进行频繁的字符串修改操作时。 #### 二、...
Java中的`StringBuffer`类是一个非常重要的工具,尤其在处理字符串的构建和修改时,它提供了比`String`类更高效的方法。`String`类是不可变的,这意味着每次对`String`对象进行修改时,都会创建一个新的字符串对象,...
在Java编程语言中,StringBuffer和StringBuilder类是处理可变字符串序列的重要工具。它们提供了丰富的功能,如添加、插入、删除、替换字符,以及反转字符串序列等。由于这两个类的特性,它们在处理大量字符串操作时...
Java StringBuffer 类(Java StringBuffer Class)用于操作字符串缓冲区。StringBuffer 类提供了多种方法来操作字符串缓冲区,如追加、插入、删除等。 static 修饰符 Java static 修饰符(Java Static Modifier)...
今天,我们来聊聊Java中的StringBuffer类,它是一个非常重要的字符串缓冲区类,广泛应用于Java编程中。下面,我们将详细介绍StringBuffer类的使用方法和应用场景。 什么是StringBuffer类? StringBuffer类是一个...
JAVA平台提供了两个类:String和StringBuffer,它们可以储存...而这个StringBuffer类提供的字符串进行修改.当你知道字符数据要改变的时候你就可以使用 StringBuffer.典型地,你可以使用 StringBuffers来动态构造字符数据.
在Java编程语言中,`StringBuffer` 和 `StringBuilder` 是两个重要的类,它们主要用于处理可变的字符串。这两个类在很多方面都非常相似,但存在一些关键的区别。 **一、StringBuffer和StringBuilder的区别** 1. **...
在Java编程语言中,`StringBuffer`和`StringBuilder`是两个非常重要的类,它们主要用于处理字符串的拼接和修改操作。这两个类位于`java.lang`包下,因此在使用时无需显式导入。本篇文章将深入探讨这两个类的特性和...
在Java编程语言中,`StringBuffer`类是一个非常重要的工具,尤其在处理字符串连接操作时。与`String`类不同,`StringBuffer`是可变的(mutable),这意味着它的内容可以在创建后进行修改,而无需创建新的对象。这种...
Java中的`StringBuffer`类是处理可变字符串的重要工具,特别是在多线程环境中。它作为`StringBuilder`类的线程安全版本,提供了高效且安全的字符串操作。在本篇文章中,我们将深入探讨`StringBuffer`类的核心概念、...
StringBuffer类是Java中另一种字符串类,它的字符串可以被修改。StringBuffer类是线程安全的,所有的方法都加上了synchronized关键字,保证了线程安全性。 在StringBuffer类的源码中,我们可以看到,它的扩容机制是...
JAVA常用类,java封装类,String类和StringBuffer类......
#### StringBuffer类简介 `StringBuffer`类是Java中的另一个重要类,用于处理可变的字符序列。与`String`类不同,`StringBuffer`允许我们修改字符串内容。 ##### 构造函数 1. **无参构造函数** `public ...
在Java编程语言中,StringBuffer类是处理字符串时非常重要的工具,尤其在需要频繁修改字符串内容的情况下。与不可变的String类不同,StringBuffer类提供了可变的字符串操作,这使得在进行字符串拼接、修改等操作时能...
对于Java中StringBuffer类的有关问题做下的思维导图,便于深化记忆,希望对你有帮助!注意:文件为.mm后缀建议下载freemind打开,免费的思维导图软件!