- String 与 StringBuffer
String与StringBuffer
String类
- String是不可改变的字符序列,
- 所在包:java.lang.String
- String类为final声明,不可以被继承
常用的方法
1 判断
1.1 两个字符串内容是否相同
boolean equals(Object obj);
boolean equalsIgnoreCase(String str);忽略大写比较字符串内容。
1.2 字符串中是否包含指定字符串
boolean contains(String str);
1.3 字符串是否以指定字符串开头。是否以指定字符串结尾。
boolean startsWith(String);
boolean endsWith(String);
2 获取字符串:
2.1 根据位置获取字符。
char charAt(int index);
2.3 根据字符获取在字符串中从 前往后数 的第一次出现的位置.
int indexOf(int ch)// ascii A 65 注意-1问题
int indexOf(int ch,int fromIndex):从指定位置进行ch的查找第一次出现位置
int indexOf(String str);
int indexOf(String str,int fromIndex);
根据字符串获取在字符串中从 后往前数 的第一次出现的位置.
int lastIndexOf(int ch)
int lastIndexOf(int ch,int fromIndex)
int lastIndexOf(String str);
int lastIndexOf(String str,int fromIndex);
2.4 获取字符串中一部分字符串
String substring(int beginIndex, int endIndex)//包含begin 不包含end 。
String substring(int beginIndex);
3 转换
3.1 将字符串中的字母转成大小写
String toUpperCase():大写
String toLowerCase():小写
3.2 将字符串中的内容进行替换
String replace(char oldch,char newch);
String replace(String s1,String s2);
3.3 将字符串两端的空格去除
String trim();
3.4 将其他数据类型变为字符串
String.valueOf(xxxx)
4 其他
4.1 获取字符串中字符的个数(长度). 注意此时是 方法
int length();
4.2 去掉字符串首尾的空格
int trim();
4.3 将字符串分割成一个数组
String[] split(String regex)
String str = "boo:and:foo";
String[] strArr = str.split(":") ;
for (int i = 0; i < strArr.length; i++) {
System.out.println( strArr[i]);
}
//错误的写法
//String[] aa = "aaa|bbb|ccc".split("|");
//String[] aa = "aaa*bbb*ccc".split("*");
//这样才能得到正确的结果
String[] aa = "aaa|bbb|ccc".split("\|");
String[] aa = "aaa|bbb|ccc".split("\\*");
for (int i = 0 ; i <aa.length ; i++ ) {
System.out.println("--"+aa[i]);
}
StringBuffer类
- StringBuffer 可修改可变的字符序列,可以对字符串进行拼接,插入,截取等
- 所在包:java.lang.StringBuffer
构造方法
应该具备什么功能呢?
CURD — 增 删 改 查
C(create 创建) U(update更新) R(read 读取) D(delete 删除)
添加:
StringBuffer append(data);
StringBuffer insert(index,data);删除:
StringBuffer delete(start,end):包含头,不包含尾。
StringBuffer deleteCharAt(int index):删除指定位置的元素修改:
StringBuffer replace(start,end,string);
void setCharAt(index,char);查找:
char charAt(index);
int indexOf(string);
int lastIndexOf(string);