Java子字符串检查

Java子字符串检查,java,string,Java,String,我有一根弦。我想检查String1中是否存在String2。String1的长度可以小于、大于或等于String2。String2有时也可以为null或空。如何在Java代码中检查这个问题?显而易见的答案是String1.contains(String2) 如果String1为空,它将抛出NullPointerException。在尝试比较之前,我会检查String1是否不为空;其他情况应按预期处理。您应尝试使用。以下是一个简单的测试类: public class Test002 {

我有一根弦。我想检查String1中是否存在String2。String1的长度可以小于、大于或等于String2。String2有时也可以为null或空。如何在Java代码中检查这个问题?

显而易见的答案是
String1.contains(String2)


如果
String1
为空,它将抛出NullPointerException。在尝试比较之前,我会检查
String1
是否不为空;其他情况应按预期处理。

您应尝试使用。

以下是一个简单的测试类:

public class Test002 {

    public static void main(String[] args) {

        String string1 = "Java is Great!";
        String string2 = "eat";

        if (string1 != null && string2 != null & string2.length() <= string1.length() & string1.contains(string2)) {
            System.out.println("string1 contains string2");
        }

    }
}
公共类Test002{
公共静态void main(字符串[]args){
String string1=“Java很棒!”;
string2=“吃”;

if(string1!=null&&string2!=null&string2.length()对于较旧的版本,您可以使用。如果string2不在string1中,indexOf将为您提供-1。您需要事先确保两个字符串都不为null,以避免出现NullPointerException。

假设他们确实在使用Java 5+。我希望,考虑到Java 5发布后的近六年,我们通常可以做出这样的假设。嗯,有很多IT商店(不幸的是,包括我在内)仍在使用Java 1.4。如果不能容忍
NullPointerException
,则可以将检查扩展到
String1!=null&&String2!=null&&String.contains(String2)
+1,用于将OP指向API,而不是用勺子输入代码。这样OP就会被迫读取API以找出参数。谁知道,在这样做的同时,他们甚至可能会找到其他有用的方法,并将其保存,以免在论坛中发布其他问题。