文章目录
- String常用方法
- 1. ==和equals
- 2. toCharArray()将字符串转换成字节数组
- 3. replace()替换字符
- 4. contains()判断字符串是否包含指定字符串
- 5. matches("")判断字符串是否存在这个正则表达式形式的字符串
- 6. compareTo()比较字符的大小, ASCII码字典
- 7. indexof lastindexof 字符串第一次或最后一次出现的位置。下标
- 8. substring()制定索引位置,截取字符串。
- 9. split()根据制定字符,转化成数组。
- 10. trim()去掉字符串前面和后面的空格,中间的不去
- 11. charAt拿固定位置的字符
- 12. concat字符串 拼接
String常用方法
1. ==和equals
- ==和equals
// 一个字符串常量,存放在字常量区。
String str1 = "好好学习";
String str2 = "好好学习";
String str3 = new String("好好学习");
System.out.println(str1 == str2);
System.out.println(str2 == str3);
System.out.println(str1.equals(str2));
System.out.println(str2.equals(str3));
/*
* String str1 = "abc"; 首先会在常量区中查找abc,如果找到abc,就把abc字符串引用地址赋给str1.
* 如果没有找到,就把abc放到常量区,然后在内存中开辟一个str1的空间,存放引用地址。
*
* new String("abc"); 开辟一个str1的空间,然后再查找。
*
* 总结:字符串使用建议选择 String str = “”;
*/
结果:
true
false
true
true
2. toCharArray()将字符串转换成字节数组
- toCharArray()将字符串转换成字节数组
String s = "abc";
// 字节数组
char[] charArray = s.toCharArray();
for (char c : charArray) {
System.out.println(c);
}
结果:
a
b
c
3. replace()替换字符
- replace()替换字符
// 替换字符串 replace(); 正则表达式
String s = "abc";
String s1 = s.replace("b", "123");
System.out.println(s);
System.out.println(s1);
结果:
abc
a123c
4. contains()判断字符串是否包含指定字符串
- contains()判断字符串是否包含指定字符串
//判断字符串是否包含指定字符串。contains()
String string1 = "abcef";
boolean flag = string1.contains("a");
boolean flag1 = string1.contains("a1");
System.out.println(flag + " " + flag1);
结果:
true false
5. matches(“”)判断字符串是否存在这个正则表达式形式的字符串
- matches(“”)判断字符串是否存在这个正则表达式形式的字符串
String string = "100000"; //判断字符串是否以1开头,后面跟着多个0没有其他元素
System.out.println(string.matches("^10*$"));
结果:
true
6. compareTo()比较字符的大小, ASCII码字典
- compareTo()比较字符的大小, ASCII码字典
// compareTo()比较字符的大小, ASCII码字典
String string2 = "abc";
String string3 = "ac";
int c1 = string2.compareTo(string3);
System.out.println(c1);
结果:
-1
7. indexof lastindexof 字符串第一次或最后一次出现的位置。下标
- indexof lastindexof 字符串第一次或最后一次出现的位置。下标
//indexof lastindexof 字符串第一次或最后一次出现的位置。下标
String str4 = "中华人民,共和国,合同法";
int f1 = str4.indexOf(',');
int l1 = str4.lastIndexOf(',');
System.out.println(f1 + " " + l1);
结果:
4 8
8. substring()制定索引位置,截取字符串。
- substring()制定索引位置,截取字符串。
//制定索引位置,截取字符串。
String str4 = "中华人民,共和国,合同法";
String newStr1 = str4.substring(0);
String newStr2 = str4.substring(0,5);
System.out.println(newStr1);
System.out.println(newStr2);
//前面这个符号包含后面这个符号不包含
System.out.println(str4.substring(str4.indexOf(','),str4.lastIndexOf(',')));
System.out.println(str4.substring(str4.indexOf(',') + 1,str4.lastIndexOf(',')));
System.out.println(str4.substring(0,str4.indexOf(',')));
结果:
中华人民,共和国,合同法
中华人民,
,共和国
共和国
中华人民
9. split()根据制定字符,转化成数组。
- split()根据制定字符,转化成数组。
//根据制定字符,转化成数组。split();
String str5 = "呵呵-你好-再见-在吗,今天去吃晚饭";
String[] array = str5.split("-");
System.out.println(array.length);
for (int i = 0; i < array.length; i++) {
String temp = array[i];
System.out.println(temp);
}
结果:
4
呵呵
你好
再见
在吗,今天去吃晚饭
10. trim()去掉字符串前面和后面的空格,中间的不去
- trim()去掉字符串前面和后面的空格,中间的不去
//去掉空格
String str6 = " 你好 , 在吗 ";
String str7 = str6.trim();
System.out.println(str7);
结果:
你好 , 在吗
11. charAt拿固定位置的字符
- charAt拿固定位置的字符
String str4 = "中华人民,共和国,合同法";
// charAt
char c = str4.charAt(1);
System.out.println(c);
结果:
华
12. concat字符串 拼接
- concat字符串 拼接
//concat字符串 拼接
String str8 = "我爱".concat("学习");// sql
System.out.println(str8);
结果:
我爱学习