java字符串本质
java其实没有字符串这一数据类型,而是java类库中提供的一个预定义的类String, 每个用双引号括起来的字符串都是String类的一个实例:
String e = “”; //空串
String greeting = “Hello World”;
所有的字符串实例都是Unicode字符序列。
Substring方法
String类的substring方法可以提取字串,
String a = “USTC”;
String b = a.substring(0,3);
b = “UST”
substring 第一个参数是开始位置,第二个参数是需要提取的字符个数,这里是 0 1 2 不包含C
拼接
java允许直接将两个字符串进行拼接
String a = “USTC” + “yyds!”;
当一个字符串类型和另一个非字符串类型进行拼接,后者直接转换为字符串类型
int a = 1;
int b = “UU” + a;
使用静态join方法可以用定界符分割多个字符串
String all = String.join("/", “S”, “M”, “L”, “XL”);
all = “S/M/L/XL”;
java字符串的不可修改性
String类没有提供修改字符串的方法,如果想要修改字符串,可以采用拼接的方法,利用substring方法拼接另一个字符串,但是这样做效率是低下的,但是这样设计的目的是为了让让字符串实现共享。
可以认为所有的字符串都是可以共享,如果修改字符串导致其他变量指向的字符串被修改。
检测字符串是否相等
String greeting = "XIAXUEFEI"
"XIA".equals(greeting);
//可以直接忽视字符串的大小写
"xia".equalsIgnoreCase("Hello");
ps:切勿使用“==”检测字符串相等
空串&&NULL串
空串指的是字符串长度为0的字符串
str.equals("");
str.length() == 0;
NULL串代表没有任何对象和String变量相关联
java程序编程接口API
java Sting类常用方法
StringBuilder
使用连接字符串的方法构建字符串比较慢,StringBuilder类创建一个对象,该对象将需要连接的字符全部装入一个空的字符串构建器:
String bulider = new StringBuilder();
builder.append(ch);//
builder.append(str);
如果需要构建字符串,调用toStrinf方法
String s = builder.toString();
StringBuilder类中常用方法