判断一个字符串中是否包含了某个字符的几种方法:
。indexOf()
。startsWith()
。contains()
indexOf
String类中的indexOf方法是在字符串中找一个字符的位置,如果没找到返回-1。
有两种形式:
indexOf(String x); x:需要匹配的字符
indexOf(Stringx , int y); x:需要匹配的字符,y:从什么位置开始
实例如下:
String x = "abcdefg";
System.out.println(x.indexOf("a"));//0
System.out.println(x.indexOf("a") != -1 ? true : false);//true
System.out.println(x.indexOf("a",3));//-1
System.out.println(x.indexOf("a",3) != -1 ? true : false);//false
System.out.println(x.indexOf("d",3));//3
System.out.println(x.indexOf("d",3) != -1 ? true : false);//true
startsWith
此方法是查找一个字符串是否是以某个指定的字符为前缀的,默认情况下从字符串开始位置查找。
有两种形式:
startsWith(String x); x:需要匹配的字符
startsWith(String x , int y); x:需要匹配的字符,y:从什么位置开始匹配
如果要用此方法判定是否包含指定字符,就需要知道指定字符的下标位置,实例如下:
String x = "abcdefg";
System.out.println(x.startsWith("a"));//true
System.out.println(x.startsWith("a",1));//false
System.out.println(x.startsWith("c",2));//true
contains
此方法是当且仅当此字符串包含指定的char值序列时返回未true,否则返回false。
contains(CharSequence x); x: 需要匹配的字符序列
实例如下:
String x = "abcdefg";
System.out.println(x.contains("c"));//true
System.out.println(x.contains("a"));//true