java–String类常用方法大全
1.字符串的替换
1. replace()
public static void main(String[] args) {
String str1 = "hello word"; String str2 = str1.replace("hello", "hi"); String str3 = str1.replace("abc", "hi"); System.out.println("str2:"+str2); //输出 hi word System.out.println("str3"+str3); //输出 hello word(要替换的目标不存在) }
2. replaceall()
public static void main(String[] args) {
String str1 = "hello word"; String str2 = str1.replaceAll("o", "O"); //把字符串中的 o全部替换为 O String str3 = str1.replaceAll("123", "A"); System.out.println("str2:"+str2); //输出 hellO wOrd System.out.println("str3"+str3); //输出 hello word(要替换的目标不存在) }
3. replaceFirst()
public static void main(String[] args) {
String str1 = "hello word"; String str2 = str1.replaceFirst("h", "H"); String str3 = str1.replaceFirst("o", "O"); //把字符串中第一个 o替换为 O String str4 = str1.replaceFirst("111", "H"); System.out.println("str2:"+str2); //输出 Hello word System.out.println("str3"+str3); //输出 hellO word System.out.println("str4"+str4); //输出 hello word(要替换的目标不存在) }
2.字符串的拆分
1. split(String regex)
public static void main(String[] args) {
String str1 = "你见过洛杉矶1凌晨四点的1样子吗?"; String[] strs = str1.split("1"); for(String s : strs){
System.out.println("s------"+s); } }

2. split(String regex, int limit)
public static void main(String[] args) {
String str1 = "abc1def1ghi1"; String[] str2 = str1.split("1", 555); for(String s2 : str2){
System.out.println("s2---"+s2); } String[] str3 = str1.split("1", 3); for(String s3 : str3){
System.out.println("s3---"+s3); } }

3.字符串的截取
1. substring(int beginIndex)
String str1 = "abcdefghi"; String str2 = str1.substring(2); //截取下标为2(含2) System.out.println(str2);

2. substring(int beginIndex, int endIndex)
String str1 = "abcdefghi"; String str2 = str1.substring(2,4); //从下标为2的字符开始截取,截取到下标为4的字符(含2不含4) System.out.println(str2);

4.字符串的查找
1. contains()
String str = "Hello Word"; boolean result1 = str.contains("l"); boolean result2 = str.contains("s"); System.out.println(result1); //输出 true System.out.println(result2); //输出 false
2. endsWith()
//此方法测试字符串是否以指定的后缀结束 String str = "Hello Word"; boolean result1 = str.endsWith("d"); boolean result2 = str.endsWith("s"); System.out.println(result1); //输出 true System.out.println(result2); //输出 false
3. startsWith(String prefix)
//此方法测试字符串是否以指定的字符开始 String str = "Hello Word"; boolean result1 = str.startsWith("H"); boolean result2 = str.startsWith("h"); System.out.println(result1); //输出 true System.out.println(result2); //输出 false
4. startsWith(String prefix, int offIndex)
String str = "Hello Word"; boolean result1 = str.startsWith("H",0); boolean result2 = str.startsWith("h",0); boolean result3 = str.startsWith("e",1); boolean result4 = str.startsWith("l",2); boolean result5 = str.startsWith("l",3); System.out.println(result1); //输出 true System.out.println(result2); //输出 false System.out.println(result3); //输出 true System.out.println(result4); //输出 true System.out.println(result5); //输出 true
5. indexOf(String str)
//返回指定字符在字符串中第一次出现处的索引(下标),如果此字符串中没有这样的字符,则返回 -1 String str = "Hello Word"; int res1 = str.indexOf("e"); int res2 = str.indexOf("s"); System.out.println(res1); //输出 1 System.out.println(res2); //输出-1
6. indexOf(String str, int fromIndex)
//返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1 String str = "Hello Word"; int res1 = str.indexOf("o",5); int res2 = str.indexOf("s"); System.out.println(res1); //输出 7 System.out.println(res2); //输出-1
7. lastindexOf(String str)
//返回指定字符在此字符串中最后一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1 String str = "Hello Word"; int res1 = str.lastIndexOf("o"); int res2 = str.indexOf("s"); System.out.println(res1); //输出 7 System.out.println(res2); //输出 -1
8. lastindexOf(String str, int fromIndex)
//从fromIndex个字符中找,返回指定字符在此字符串中最后一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1 String str = "Hello Wordollo"; int res1 = str.lastIndexOf("o",9); int res2 = str.indexOf("s"); System.out.println(res1); //输出 7 System.out.println(res2); //输出 -1
9. charAt(int index)
//返回指定索引处的字符。索引范围为从 0 到 length() - 1 String str = "Hello Wordollo"; char str1 = str.charAt(0); char str2 = str.charAt(6); System.out.println(str1); //输出 H System.out.println(str2); //输出 W
5.字符串的比较
1. equals()
String str1 = "你见过洛杉矶凌晨四点的样子吗?"; String str2 = "ABC"; String str3 = "你见过洛杉矶凌晨四点的样子吗?"; System.out.println(str1.equals(str2)); //输出 false System.out.println(str1.equals(str3)); //输出 true
2. equalsIgnoreCase()
//不区分大小写 String str1 = "abc"; String str2 = "ABC"; System.out.println(str1.equalsIgnoreCase(str2)); //输出 true
3. compareTo(String str)
/* *用于两种方式的比较: * 字符串与对象进行比较 * 按字典顺序比较两个字符串 * 返回值是整型,它是先比较对应字符的大小(ASCII码顺序),如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值,如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方 * 如果参数字符串等于此字符串,则返回值 0 * 如果此字符串小于字符串参数,则返回一个小于 0 的值 * 如果此字符串大于字符串参数,则返回一个大于 0 的值 */ String str1 = "a"; String str2 = "A"; String str3 = "bb"; String str4 = "a"; System.out.println(str1.compareTo(str2)); //输出 32 System.out.println(str1.compareTo(str3)); //输出 -1 System.out.println(str1.compareTo(str4)); //输出 0
4. compareToIgnoreCase(String str)
//按字典顺序比较两个字符串,不考虑大小写 /* * 如果参数字符串等于此字符串,则返回值 0 * 如果此字符串小于字符串参数,则返回一个小于 0 的值 * 如果此字符串大于字符串参数,则返回一个大于 0 的值 / String str1 = "a"; String str2 = "A"; String str3 = "bb"; String str4 = "a"; System.out.println(str1.compareToIgnoreCase(str2)); //输出 0 System.out.println(str1.compareToIgnoreCase(str3)); //输出 -1 System.out.println(str1.compareToIgnoreCase(str4)); //输出 0 /* * 在compareTo上返回的数据类型是int型,有如下三种返回: * 大于:> 0 * 小于:< 0 * 等于: = 0 * compareTo对于大小的比较实际上就是对字母编码的比较 /
6.字符串转为数组
1. 将字符串转为字节数组

- getBytes(String charsetName): 使用指定的字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中
- getBytes()使用平台的默认字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中
public static void main(String args[]) {
String Str1 = new String("runoob"); try{
byte[] Str2 = Str1.getBytes(); System.out.println( Str2 ); //输出 [B@7852e922 Str2 = Str1.getBytes( "UTF-8" ); System.out.println( Str2 ); //输出 [B@4e25154f Str2 = Str1.getBytes( "ISO-8859-1" ); System.out.println( Str2 ); //输出 [B@70dea4e } catch ( UnsupportedEncodingException e){
System.out.println("不支持的字符集"); } }
2. 将字符串变为字节数组
- toCharArray() 方法将字符串转换为字符数组

public static void main(String args[]) {
String Str = new String("www.runoob.com"); System.out.println( Str.toCharArray() ); //输出 www.runoob.com }
7.其他方法
1. 字符串长度

2. 大写转小写

3. 小写转大写

4. 去掉前后空格(中间保留)

5. 字符串连接(一般用+)

6. 将内容保存到对象池中

7. 判断是否是空字符串

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220625.html原文链接:https://javaforall.net
