JAVA 字符串
- java 提供了 String 类来创建和操作字符串。但是,String类不可变类,即一旦一个string 对象被创建后,包含在这个对象之中的字符序列时不可改变的,直至这个对象被销毁。
- java 同时提供了两个可变字符串类 StringBuffer 和 StringBuildeer,两者功能基本相似,方法野差不多。不同的是,StringBufeffer 是线程安全的,而StringBuilder 则是没有实现线程安全功能,所以性能略高。
String类
直接定义字符串:
直接定义字符串是指使用双引号表示字符串中的内容,具体方法是用字符串常量直接初始化一个String对象,如下:
String str = "hello,world"
使用String类定义
- String()初始化一个新创建的String对象,表示一个字符序列。
- String(String original)初始化一个新创建的String对象,使其表示一个与参数相同的字符序列。
- String(char [] value)分配一个新的字符串,将参数中的字符数组元素全部变为字符串。
StringBuilder类
java提供了两个可变字符串类StringBuffer 和StringBuilder。创建StringBuilder类的对象后可以随意修改字符串的内容。每个StringBuilder类的对象都能够存储指定容量的字符串,如果字符串的长度超过了StringBuilder类对象的容量,则该对象的容量会自动扩大。
StringBuilder构造方法
StringBuilder类提供了3个构造方法来创建一个字符串,如下所示:
- StringBuilder()构造一个控的字符串缓冲区,并且初始化为16个字符容量。
- StringBuilder(int length)创建一个空的字符串缓冲区,并且初始化为指定长度length的容量。
- StringBuilder(String str)创建一个字符串缓冲区,并将其内容初始化为指定的字符串内容str,字符串缓冲区的初始容量为16加上字符串str的长度。
//定义一个空的字符串缓冲区,含有16个字符的容量
StringBuilder str1 = new StringBuilder();
//定义一个含有10个字符容量的字符串缓冲区
StringBuilder str2 = new StringBuilder(10);
//定义一个含有(16+4)的字符串缓冲区,“青春无悔”为四个字符
StringBuilder str3 = new StringBuilder("青春无悔");
/**
*输出字符串的容量大小
*capacity()方法返回字符串的容量大小
*/
System.out.println(str1.capacity());//输出 16
System.out.println(str2.capacity());//输出 10
System.out.println(str3.capacity());//输出 20
来源:CSDN
作者:fanglingyu00
链接:https://blog.csdn.net/fanglingyu00/article/details/103548366