Java StringBuilder类

Java StringBuilder类

Java StringBuilder类用于创建可变(可修改)字符串。Java StringBuilder类与StringBuffer类相同,但它是不同步的。从JDK 1.5开始可用。

StringBuilder类的重要构造函数

建设者描述
StringBuilder()创建一个初始容量为16的空字符串Builder。
StringBuilder(字符串str)用指定的字符串创建一个字符串生成器。
StringBuilder(int长度)创建一个具有指定容量作为长度的空字符串Builder。

StringBuilder类的重要方法

方法描述
公共StringBuilder append(String s)用于在此字符串后附加指定的字符串。append()方法是重载的,如append(char),append(boolean),append(int),append(float),append(double)等。
公共StringBuilder insert(int offset,String s)用于将指定的字符串与此字符串插入指定位置。insert()方法是重载的,如insert(int,char),insert(int,boolean),insert(int,int),insert(int,float),insert(int,double)等。
公共StringBuilder replace(int startIndex,int endIndex,String str)用于替换指定的startIndex和endIndex中的字符串。
公开StringBuilder delete(int startIndex,int endIndex)用于从指定的startIndex和endIndex删除字符串。
公共StringBuilder reverse()用于反转字符串。
公共int容量()用于返回当前容量。
公共无效sureCapacity(int minimumCapacity)用于确保容量至少等于给定的最小值。
公共char charAt(int索引)用于返回指定位置的字符。
public int length()用于返回字符串的长度,即字符总数。
公共字符串子字符串(int beginIndex)用于从指定的beginIndex返回子字符串。
公共字符串子字符串(int beginIndex,int endIndex)用于从指定的beginIndex和endIndex返回子字符串。

Java StringBuilder示例

让我们看一下StringBuilder类的不同方法的示例。

1)StringBuilder append()方法

StringBuilder append()方法将给定参数与此字符串连接在一起。

class StringBuilderExample {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder("Hello ");
		sb.append("Java");// now original string is changed
		System.out.println(sb);// prints Hello Java
	}
}

2)StringBuilder insert()方法

StringBuilder insert()方法将给定字符串与该字符串插入给定位置。

class StringBuilderExample2 {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder("Hello ");
		sb.insert(1, "Java");// now original string is changed
		System.out.println(sb);// prints HJavaello
	}
}
 

3)StringBuilder replace()方法

StringBuilder replace()方法从指定的beginIndex和endIndex替换给定的字符串。

class StringBuilderExample3 {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder("Hello");
		sb.replace(1, 3, "Java");
		System.out.println(sb);// prints HJavalo
	}
}
 

4)StringBuilder delete()方法

StringBuilder类的delete()方法将字符串从指定的beginIndex删除到endIndex。

class StringBuilderExample4 {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder("Hello");
		sb.delete(1, 3);
		System.out.println(sb);// prints Hlo
	}
}
 

5)StringBuilder reverse()方法

StringBuilder类的reverse()方法反转当前字符串。

class StringBuilderExample5 {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder("Hello");
		sb.reverse();
		System.out.println(sb);// prints olleH
	}
}
 

6)StringBuilder Capacity()方法

StringBuilder类的Capacity()方法返回Builder的当前容量。生成器的默认容量为16。如果字符数从其当前容量增加,它将增加(oldcapacity * 2)+2。例如,如果您当前的容量为16,则将为(16 * 2)+ 2 = 34。

class StringBuilderExample6 {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder();
		System.out.println(sb.capacity());// default 16
		sb.append("Hello");
		System.out.println(sb.capacity());// now 16
		sb.append("java is my favourite language");
		System.out.println(sb.capacity());// now (16*2)+2=34 i.e (oldcapacity*2)+2
	}
}
 

7)StringBuilder sureCapacity()方法

StringBuilder类的ensureCapacity()方法可确保给定容量为当前容量的最小值。如果大于当前容量,则将容量增加(oldcapacity * 2)+2。例如,如果您当前的容量为16,则将为(16 * 2)+ 2 = 34。

class StringBuilderExample7 {
	public static void main(String args[]) {
		StringBuilder sb = new StringBuilder();
		System.out.println(sb.capacity());// default 16
		sb.append("Hello");
		System.out.println(sb.capacity());// now 16
		sb.append("java is my favourite language");
		System.out.println(sb.capacity());// now (16*2)+2=34 i.e (oldcapacity*2)+2
		sb.ensureCapacity(10);// now no change
		System.out.println(sb.capacity());// now 34
		sb.ensureCapacity(50);// now (34*2)+2
		System.out.println(sb.capacity());// now 70
	}
}

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值