String的构造方法
1)String(String original):把字符串数据封装成字符串对象
2)String(char[] value):把字符数组的数据封装成字符串对象
3)String(char[] value, int index, int count):把字符数组中的一部分数据封装成字符串对象
2.String类的获取功能:
1)length():获取字符串的长度,其实也就是字符个数
String str = "123456789";
System.out.println(str.length());
2)charAt(int index):获取指定索引处的字符
String str = "123456789";
System.out.println(str.charAt(6));
3)indexOf(String str):获取str在字符串对象中第一次出现的索引
String str = "123456789";
System.out.println(str.indexOf('2'));
String str = "123456789123";
System.out.println(str.indexOf('2',5));
4)substring(int start):从start开始截取字符串
String str = "123456789123";
System.out.println(str.substring(1));
5)String substring(int start,int end):从start开始,到end结束截取字符串。包括start,不包括end
String str = "123456789123";
System.out.println(str.substring(1,7));
1)equals(Object obj):比较字符串的内容是否相同
String str = "123456789";
System.out.println(str.equals("123456789"));
System.out.println(str.equals("123"));
2)equalsIgnoreCase(String anotherString):比较字符串的内容是否相同,忽略大小写
String str = "123456789";
System.out.println(str.equalsIgnoreCase("123456789"));
3)startsWith(String prefix):判断字符串对象是否以指定的字符开头(区分大小写)
String str = "a123456789";
System.out.println(str.startsWith("a"));
System.out.println(str.startsWith("A"));
4)startsWith(String prefix,int toffset):判断字符串对象是否以指定的字符开头,参数toffset为指定从哪个下标开始
String str = "adsfaxsdfas沙发上案发地方";
String str = "123456789";
System.out.println(str.startsWith("3", 2));
System.out.println(str.startsWith("3", 1));
5)endsWith(String str):判断字符串对象是否以指定的字符结尾
String str = "123456789a";
System.out.println(str.endsWith("a"));
System.out.println(str.endsWith("A"));
6)isEmpty():判断指定字符串是否为空
4.String类中的转化方法:1)toCharArray():把字符串转换为字符数组
public static void main(String[] args) {
String str = "123456789";
char arr[] = str.toCharArray();
printArray(arr);
}
public static void printArray(char a[]) {
for(int i=0;i<a.length;i++) {
System.out.print(a[i]+",");
}
}
2)toLowerCase():把字符串转换为小写字符串
String str1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
System.out.println(str1.toLowerCase());
3)toUpperCase():把字符串转换为大写字符串
String str1 = "abcdefghijklmnopqrstuvwxyz";
System.out.println(str2.toUpperCase());
1)trim():去除字符串两端空格
String str3 = " a c e x u a n x u a n ";
System.out.println(str3.trim());
System.out.println(str3);
2)split():去除字符串中指定的的字符,然后返回一个新的字符串
public static void main(String[] args) {
String str = "adsfaxsdfas沙发上发地方";
String array[] = str.split("a");
printString(array);
}
public static void printString(String a[]) {
for(int i=0;i<a.length;i++) {
System.out.print(a[i]);
}
}
3)subSequence(int beginIndex,int endIndex ):截取字符串中指定位置的字符组成一个新的字符串
String str = "adsfaxsdfas沙发上发地方";
System.out.println(str.subSequence(1, 10));
4)replace(char oldChar, char newChar):将指定字符替换成另一个指定的字符
String str = "adsfaxsdfas沙发上发地方";
System.out.println(str.replace('a', 's'));
5)replaceAll(String regex,String replasement):用新的内容替换全部旧内容
String str4 = "Hello,world!";
System.out.println(str4.replaceAll("l", "&"));
6)replaceFirst(String regex,String replacement):替换首个满足条件的内容
String str = "adsfaxsdfas沙发上发地方";
System.out.println(str.replaceFirst("沙", "璇"));
7)lastIndexOf(String str):返回指定字符出现的最后一次的下标
String str4 = "Hello,world!";
System.out.println(str4.lastIndexOf("l"));
8)contains(CharSequence s):查看字符串中是都含有指定字符
String str4 = "Hello,world!";
System.out.println(str4.contains("l"))
9)concat(String str):在原有的字符串的基础上加上指定字符串
String str5 = "dr";
System.out.println(str5.concat("eam"));
/**
* 截取字符串str中指定字符 strStart、strEnd之间的字符串
*
* @param str 待截取的字符串
* @param strStart 起始字符或字符串
* @param strEnd 截止字符或字符串
* @return
*/
public String subString(String str, String strStart, String strEnd) {
// 找出指定的2个字符在该字符串里面的位置
int strStartIndex = str.indexOf(strStart);
int strEndIndex = str.indexOf(strEnd);
// index为负数,即表示该字符串中没有该字符
if (strStartIndex < 0) {
return "字符串 :---->" + str + "<---- 中不存在 " + strStart + ", 无法截取目标字符串";
}
if (strEndIndex < 0) {
return "字符串 :---->" + str + "<---- 中不存在 " + strEnd + ", 无法截取目标字符串";
}
// 开始截取
return str.substring(strStartIndex, strEndIndex).substring(strStart.length());
}
作者:我是一个小仓鼠