String和StringBuilder
String
1 equals方法
比较两个字符串
- == 表叫两个字符串比较的是地址值
- equals方法比较的是两个字符串的内容
char[] arr = {'我','爱','你'};
String s1 = new String(arr);
String s2 = new String(arr);
System.out.println(s1 == s2); //false
System.out.println(s1.equals(s2)); //true
2 equalsIgnoreCase
在不考虑大小写的情况下比较两个字符串的内容
String s1 = "我爱Java";
String s2 = "我爱jAVA";
System.out.pringln(s1.equalsIgnoreCase(s2));//true
String类的方法
1 length
字符串的长度
String s = "Java";
System.out.println(s.length());
2 concat
字符串的拼接(只能拼接String类型)
String s = "我爱";
String s1 = s.concat("Java");
System.out.pringln(s1);
3 charAt
返回指定索引处的字符
String s = "我爱Java";
System.out.println(s.charAt(1));//爱
4 indexOf
返回指定子字符串在此字符串中第一次出现处的索引, 如果没有出现就返回-1
String s = "我爱Java";
System.out.println(s.indexOf("爱"));//1
5 substring
public String substring(int beginIndex) // beginIndex: 开始索引
: 截取字符串的一部分, 从beginIndex开始一直到结尾
public String substring(int beginIndex,// beginIndex: 开始索引
int endIndex) // endIndex : 结束索引
: 截取字符串中的一部分, 从beginIndex(包含)开始, 截取到endIndex(不包含)结束
包头不包尾
StringBuilder
- String: 是一个不可变的字符序列
- StringBuilder: 是一个可变的字符序列
- 字符串通过+完成拼接操作, 其实比较复杂. 所以如果拼接的操作过多, 不建议使用+.
StringBuilder的常用方法
1 append
public StringBuilder append(String str) :
将参数中的内容, 进行拼接, 返回StringBuilder本身拼接: 就是在本身的基础上进行拼接
2 reverse
public StringBuilder reverse() : 反转该字符串缓冲区, 返回本身(反转之后)
3 toString
public String toString() : 将字符串缓冲区StringBuilder中的内容, 转换成字符串并返回
String转换成StringBuilder
// StringBuilder sb = "abc"; // StringBuilder不允许这种操作
// public StringBuilder(String s)
String s = "Hello";
StringBuilder sb = new StringBuilder(s);