java中indexof的用法(java字符串indexof方法)

java中indexof的用法(java字符串indexof方法)

Java 字符串常用的方法总结

1.int length():返回字符串的长度:return value.length

2.int indexOf(String str):返回指定子字符串在此字符串中第一次出现处的索引

3.int indexOf(String str, int fromIndex):返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始

4.int lastIndexOf(String str):返回指定子字符串在此字符串中最右边出现处的索引

5.int lastIndexOf(String str, int fromIndex):返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索

注:indexOf和lastIndexOf方法如果未找到都是返回-1

6.int compareTo(String anotherString):比较两个字符串的大小

7.boolean equals(Object obj):比较字符串的内容是否相同

8.boolean endsWith(String suffix):测试此字符串是否以指定的后缀结束

boolean startsWith(String prefix):测试此字符串是否以指定的前缀开始

9.boolean startsWith(String prefix, int toffset):测试此字符串从指定索引开始的子字符串是否以指定前缀开始

10.boolean isEmpty():判断是否是空字符串:return value.length == 0

11.boolean equalsIgnoreCase(String anotherString):与 equals 方法类似,忽略大小写

12.boolean contains(CharSequence s):当且仅当此字符串包含指定的 char 值序列时,返回 true

13.boolean isEmpty():判断是否是空字符串:return value.length == 0

14.匹配:

boolean matches(String regex):告知此字符串是否匹配给定的正则表达式。

15.String toLowerCase():使用默认语言环境,将 String 中的所有字符转换为小写

16.String toUpperCase():使用默认语言环境,将 String 中的所有字符转换为大写

17.String trim():返回字符串的副本,忽略前导空白和尾部空白

18.String concat(String str):将指定字符串连接到此字符串的结尾。等价于用“ ”

19.String substring(int beginIndex):返回一个新的字符串,它是此字符串的从beginIndex开始截取到最后的一个子字符串。

20.String substring(int beginIndex, int endIndex) :返回一个新字符串,它是此字符串从 beginIndex 开始截取到 endIndex (不包含)的一个子字符串。

21.切片:

String[] split(String regex):根据给定正则表达式的匹配拆分此字符串。

String[] split(String regex, int limit):根据匹配给定的正则表达式来拆分此字符串,最多不超过 limit 个,如果超过了,剩下的全部都放到最后一个元素中。

22.替换:

String replace(char oldChar, char newChar):字符替换字符

String replace(CharSequence target, CharSequence replacement):字符串替换字符串

String replaceAll(String regex, String replacement):使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。

String replaceFirst(String regex, String replacement):使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。

23.char charAt(int index):返回某索引处的字符return value[index]

24. char [] toCharArray(String str) :直接转换成char型数组

String str1 = “Hello World”; String str2 = “Hello World”; String str3 = “hello world”; String str4 = ” hello world “; //返回字符串的长度 System.out.println(“r1: ” str1.length()); //比较两个字符串的大小compareTo(返回的是int),0相等,复数小于,正数大于 System.out.println(“r2 : ” str1.compareTo(str2)); //比较两个字符串的大小compareTo(返回的是int),0相等,复数小于,正数大于 System.out.println(“r3 : ” str1.compareTo(str3)); //字符串比较compareToIgnoreCase,忽略大小写。0相等,复数小于,正数大于System.out.println( “r4 : ” str1.compareToIgnoreCase(str3)); //字符串查找indexOf,返回的是找到的第一个的位置,没找到返回-1。从0开始 System.out.println(“r5 : ” str1.indexOf(“o”)); //查找字符串最后一次出现的位置lastIndexOf System.out.println(“r6 : ” str1.lastIndexOf(“o”)); //删除字符串中的一个字符,字符串从0开始的 substring(a, b)返回指定起始位置(含)到结束位置(不含)之间的字符串 System.out.println(“r7 : ” str1.substring(0, 5) str1.substring(6)); //字符串替换,替换所有 System.out.println(“r8 : ” str1.replace(“o”, “h”)); //字符串替换,替换所有 System.out.println(“r9 : ” str1.replaceAll(“o”, “h”)); //字符串替换,替换第一个 System.out.println(“r10 : ” str1.replaceFirst(“o”, “h”)); //字符串反转 System.out.println(“r11 : ” new StringBuffer(str1).reverse()); //字符串反转System.out.println(“r11’: ” new StringBuilder(str1).reverse()); //字符串分割 String [] temp = str1.split(“\\ “); for (String str : temp){ System.out.println(“r12 : ” str); } //字符串转大写 System.out.println(“r13 : ” str1.toUpperCase()); //字符串转小写 System.out.println(“r14 : ” str1.toLowerCase()); //去掉首尾空格 System.out.println(“r15 : ” str4.trim()); //是否包含,大小写区分 System.out.println(“r16 : ” str1.contains(“World”)); //返回指定位置字符 System.out.println(“r17 : ” str1.charAt(4)); //测试此字符串是否以指定的后缀结束 System.out.println(“r18 : ” str1.endsWith(“d”)); //测试此字符串是否以指定的前缀开始 System.out.println(“r19 : ” str1.startsWith(“H”)); //测试此字符串从指定索引开始的子字符串是否以指定前缀开始 System.out.println(“r20 : ” str1.startsWith(“ll”,2)); //将指定字符串连接到此字符串的结尾。等价于用“ ” System.out.println(“r21 : ” str1.concat(“haha”)); //比较字符串的内容是否相同 System.out.println(“r22 : ” str1.equals(str2)); //与equals方法类似,忽略大小写 System.out.println(“r23 : ” str1.equalsIgnoreCase(str2)); //判断是否是空字符串 System.out.println(“r24: ” str1.isEmpty());}

执行结果如下

r1: 11r2 : 0r3 : -32r4 : 0r5 : 4r6 : 7r7 : HelloWorldr8 : Hellh Whrldr9 : Hellh Whrldr10 : Hellh Worldr11 : dlroW olleHr11 :dlroWolleHr12 : Hellor12 : Worldr13 : HELLO WORLDr14 : hello worldr15 : hello worldr16 : truer17 : or18 : truer19 : truer20 : truer21 : Hello Worldhahar22 : truer23 : truer24: falseString str1 = “Hello World”;char[] charArray = str1.toCharArray(); for (int i = 0; i < charArray.length; i ) { System.out.println(charArray[i]); } char[] arr = new char[]{‘h’,’e’,’l’,’l’,’o’}; String str5 = new String(arr); System.out.println(str5);”’执行结果如下:HelloWorldhello”’

StringBuffer : 可变字符序列、效率低、线程安全 StringBuilder: 可变字符序列、效率高、线程不安全由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

上期推荐

good

应用 | 利用百度地图 API 解析图片中的具体位

下期预告

nice

基础 | Tomcat 配置数据源

创智俱乐部

发表评论

登录后才能评论