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);
			}	
		}

swift string 替换部分内容 string替换方法_Word


   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);
			}
		}

swift string 替换部分内容 string替换方法_swift string 替换部分内容_02


3.字符串的截取

   1. substring(int beginIndex)

String str1 = "abcdefghi";
		String str2 = str1.substring(2);	//截取下标为2(含2)
		System.out.println(str2);

swift string 替换部分内容 string替换方法_Word_03


   2. substring(int beginIndex, int endIndex)

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

swift string 替换部分内容 string替换方法_System_04


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. 将字符串转为字节数组

swift string 替换部分内容 string替换方法_swift string 替换部分内容_05

  • 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. 字符串长度

swift string 替换部分内容 string替换方法_java--String类常用方法大全_06


   2. 大写转小写

swift string 替换部分内容 string替换方法_Word_07


   3. 小写转大写

swift string 替换部分内容 string替换方法_swift string 替换部分内容_08


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

swift string 替换部分内容 string替换方法_System_09


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

swift string 替换部分内容 string替换方法_字符串_10


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

swift string 替换部分内容 string替换方法_字符串_11


   7. 判断是否是空字符串

swift string 替换部分内容 string替换方法_swift string 替换部分内容_12