String(字符串)常用方法合集

上一篇文章,我将StringStringBuffer的方法做了一次全面刨析,这次将一些不常用方法和常用方法列举出来

 length()字符串的长度

String a = "Hello Word!";
System.out.println(a.length);

输出的结果是字符串长度10

charAt()截取一个字符

String a = "Hello Word";
System.out.println(a.charAt(1));

输出的结果是字符串a的下标为1的字符e

getchars()截取多个字符并由其他字符串接收

String a = "Hello Word";
char[] b = new char[10];
a.getChars(0, 5, b, 0);
System.out.println(b);

输出的结果为Hello,其中第一个参数0是要截取的字符串的初始下标(int sourceStart),第二个参数5是要截取的字符串的结束后的下一个下标(int sourceEnd)也就是实际截取到的下标是int sourceEnd-1,第三个参数是接收的字符串(char target[]),最后一个参数是接收的字符串开始接收的位置

getBytes()将字符串变成一个byte数组

String a = "Hello Word";
byte b[] = a.getBytes();
System.out.println(new String(b));

输出的结果为Hello Word的byte数组

 toCharArray()将字符串变成一个字符数组

String a = "Hello Word";
char[]b = a.toCharArray();
System.out.println(b);  

输出的结果为Hello Word字符数组

equals()和equalsIgnoreCase()比较两个字符串是否相等,前者区分大小写,后者不区分

String a = "Hello Word";
String b = "hello word";
System.out.println(a.equals(b));
System.out.println(a.equalsIgnoreCase(b));  

输出的结果为第一条为false,第二条为true

 startsWith()和endsWith()判断字符串是不是以特定的字符开头或结束

String a = "Hello Word";
System.out.println(a.toUpperCase());
System.out.println(a.toLowerCase());

输出的结果第一条为“HELLO WORD”,第二条为“hello word”

concat() 连接两个字符串

String a = "Hello Word";
String b = "你好";
System.out.println(b.concat(a));

输出的结果为“你好Hello Word”

trim()去掉起始和结束的空格

String a = "    Hello Word   ";
System.out.println(a.trim());

输出的结果为“Hello Word”

 substring()截取字符串

String a = "Hello Word";
System.out.println(a.substring(0, 5));
System.out.println(a.substring(6));

输出的结果第一条为“Hello”,第一个参数0(beginIndex)是开始截取的位置,第二个参数5(endIndex)是截取结束的位置,输出的结果第二条是“Word”,参数6(beginIndex)是开始截取的位置

 indexOf()和lastIndexOf()前者是查找字符或字符串第一次出现的地方,后者是查找字符或字符串最后一次出现的地方

String a = "Hello Word";
System.out.println(a.indexOf("o"));
System.out.println(a.lastIndexOf("o"));

输出的结果第一条是4,是o第一次出现的下标,第二条是7,是o最后一次出现的下标

compareTo()和compareToIgnoreCase()按字典顺序比较两个字符串的大小,前者区分大小写,后者不区分

String a = "Hello Word";
String b = "hello word";
System.out.println(a.compareTo(b));
System.out.println(a.compareToIgnoreCase(b)); 

输出的结果第一条为-32,第二条为0,两个字符串在字典顺序中大小相同,返回0

replace() 替换

String a = "Hello Word";
String b = "你好";
System.out.println(a.replace(a, b));
System.out.println(a.replace(a, "HELLO WORD"));
System.out.println(b.replace("你", "大家"));

输出的结果第一条为“你好”,第二条为“HELLO WORD”,第三条为“大家好”

猜你喜欢

转载自blog.csdn.net/qq_60750453/article/details/120954997