String类不可变字符序列
成员方法:
toCharArray() – 将字符串转成字符数组
charAt(int 字符下标) – 根据字符下标获取到字符串某个位置上的字符
substring(int start)-获取的子字符串是从开始的位置到最后
substring(int start,int end)-获取的子字符串是字符串的从开始到结束,左开右闭
indexOf(String str)-获取的字符窜是从什么位置开始的
lastIndexOf(String str) -获取的字符窜最后一次出现的位置是什么
没有出现过,返回-1
String类: 不可变字符序列
成员方法:
toCharArray() – 将字符串转成字符数组
charAt(int 字符下标) – 根据字符下标获取到字符串某个位置上的字符
底层一个
*public* *char* charAt(****int**** index) {
*if* ((index < 0) || (index >= value.length)) {
*throw* *new* StringIndexOutOfBoundsException(index);
}
*return* value[index];
}
字符窜底层是字符类型的数组
substring(int start)-获取的子字符串是从开始的位置到最后
substring(int start,int end)-获取的子字符串是字符串的从开始到结束,左开右闭
indexOf(String str)-传入的字符串在字符串中第一次出现的位置
lastIndexOf(String str)-传入的字符串在字符窜中最后一次出现的位置
可以用于做模糊查询
没有出现过,返回-1
equals(String str)是否相等
equalsIgnoreCase(String str)是否相等忽略大小写
length()字符窜的长度
toUpperCase()将全部的字符串都转化成大写的
toLowerCase()将全部的字符窜都转化成小写的
split(String str)字符窜用传入的字符串作为分割的界限
replaceAll(String x,String y)将字符串的全部的x,都转化成字符串y
trim()去掉字符窜首位的空格
StringBuilder可变字符序列
成员方法:
setLength(int) : 改变字符序列的长度 setLength(0)–清空字符序列
append(“字符串”): 把新的字符串追加到原字符串的末尾
以上的类都在java.lang下 ,每个java源文件默认导入java.lang.*;不包含子包下的类-1
StringBuilder:可变字符序列
成员方法:
setLength(int) : 改变字符序列的长度 setLength(0)–清空字符序列
append(“字符串”): 把新的字符串追加到原字符串的末尾
以上的类都在java.lang下 ,每个java源文件默认导入java.lang.*;不包含子包下的类
2: 总结String和StringBuilder的区别:
String:是不可改变的字符串,如果给String添加一个值,会产生3块空间,举个例子:a是一个字符串,要在a后面添加b,首先a存放到常量池里面,添加b,开辟一个空间存放b,又开辟了一块空间存放ab,总共3块空间
StringBuilder:可以改变的字符串,可以直接在字符串的存放位置后面通过append进行添加,不会重新开辟一块空间,将字符串更改以后需要通过toString方法将其转化成不可变的字符串