一、contains方法介绍
在java中,contains方法是String类中常用的方法之一,其主要作用是判断一个字符串是否包含另一个字符串,并返回一个boolean值。
public boolean contains(CharSequence s) { return indexOf(s.toString()) > -1; }
具体来说,contains方法会在调用该方法的字符串中查找某个指定的子字符串,如果找到该子字符串,则返回true,否则返回false。
contains方法参数为CharSequence类型,也就是说,在传参数时可以传入任何实现了CharSequence接口的对象,包括String、StringBuilder等。
二、contains方法用法
1、判断字符串是否包含某个字符序列
contains方法最简单的用法就是判断一个字符串是否包含另一个字符序列:
String str1 = "Hello World"; String str2 = "Hello"; String str3 = "Java"; System.out.println(str1.contains(str2)); // true System.out.println(str1.contains(str3)); // false
在上面的例子中,我们调用contains方法依次判断str1字符串是否包含str2和str3字符串,结果分别为true和false。
2、判断字符串中是否包含某个字符
除了判断一个字符串是否包含另一个字符序列,contains方法还可以用于判断一个字符串中是否包含某个字符:
String str1 = "Hello World"; char ch1 = 'o'; char ch2 = 'p'; System.out.println(str1.contains(String.valueOf(ch1))); // true System.out.println(str1.contains(String.valueOf(ch2))); // false
在上面的例子中,我们先定义了一个字符串str1和两个待判断的字符ch1和ch2,然后调用contains方法分别判断了str1字符串中是否包含字符ch1和ch2,结果分别为true和false。
3、判断一个字符串是否以某个字符序列开头或结尾
除了判断一个字符串是否包含某个字符序列,还可以判断一个字符串是否以某个字符序列开头或结尾。对于这种情况,我们可以使用startsWith和endsWith方法。
String str1 = "Hello World"; String str2 = "Hello"; String str3 = "World"; System.out.println(str1.startsWith(str2)); // true System.out.println(str1.endsWith(str3)); // true
在上面的例子中,我们先定义了一个字符串str1和两个待判断的字符串str2和str3,然后分别调用startsWith和endsWith方法,判断str1字符串是否以str2字符串开头和是否以str3字符串结尾,结果都为true。
三、contains方法注意事项
1、参数类型为CharSequence
contains方法的参数类型为CharSequence,如果传的参数是一个StringBuilder或者StringBuffer类型的对象,那么在判断的时候并不会将其转换成String类型。因此,使用contains方法时,需要注意传入正确的参数类型。
2、区分大小写
在Java中,字符串区分大小写。因此,contains方法在判断字符串是否包含某个字符序列时,也是区分大小写的。如果需要忽略大小写,可以先将字符串转换成小写或大写后再判断:
String str1 = "Hello World"; String str2 = "hello"; System.out.println(str1.toLowerCase().contains(str2.toLowerCase())); // true
在上面的例子中,我们将字符串str1和str2都转换成小写后,再调用contains方法判断是否包含,结果为true。
3、对空字符串的判断
当参数为一个空字符串时,contains方法会直接返回false:
String str1 = "Hello World"; String str2 = ""; System.out.println(str1.contains(str2)); // false
在上面的例子中,当参数str2为空字符串时,contains方法直接返回false。
四、总结
contains方法作为String类中的常用方法,在Java编程中非常实用。它可以判断一个字符串是否包含另一个字符串或字符,还可以判断一个字符串是否以某个字符序列开头或结尾。使用contains方法时,需要注意参数类型、区分大小写和对空字符串的判断等问题。