java中判断两个字符串是否包含可以使用String类的contains方法来实现。contains方法会返回一个boolean值,如果指定的字符串包含在此对象中,则返回true;否则返回false。

代码示例如下:

String str1 = "Hello, World!";
String str2 = "Hello";

boolean result = str1.contains(str2);
System.out.println("字符串str1是否包含字符串str2:" + result);

运行结果:

字符串str1是否包含字符串str2:true

在上面的代码中,我们首先定义了两个字符串变量str1和str2,然后通过str1.contains(str2)方法判断str1是否包含str2。最后将结果打印出来。

除了使用contains方法外,还可以使用indexOf方法来判断两个字符串是否包含。indexOf方法会返回指定字符或字符串在源字符串中第一次出现的位置。如果找不到指定字符或字符串,则返回-1。

代码示例如下:

String str1 = "Hello, World!";
String str2 = "Hello";

int index = str1.indexOf(str2);
boolean result = index != -1;
System.out.println("字符串str1是否包含字符串str2:" + result);

运行结果:

字符串str1是否包含字符串str2:true

在上面的代码中,我们首先通过str1.indexOf(str2)方法获取str2在str1中的位置,然后判断位置是否为-1。如果不为-1,则说明str1包含str2。

除了使用contains方法和indexOf方法,还可以使用正则表达式来判断两个字符串是否包含。正则表达式提供了更为灵活的匹配方式,可以实现更复杂的判断逻辑。

代码示例如下:

String str1 = "Hello, World!";
String str2 = "Hello";

boolean result = str1.matches(".*" + str2 + ".*");
System.out.println("字符串str1是否包含字符串str2:" + result);

运行结果:

字符串str1是否包含字符串str2:true

在上面的代码中,我们使用matches方法和正则表达式"."来判断str1是否包含str2。正则表达式"."表示匹配任意字符零次或多次。

总结一下,java中判断两个字符串是否包含可以使用String类的contains方法、indexOf方法或正则表达式来实现。使用contains方法和indexOf方法比较简单,适用于简单的判断需求;而使用正则表达式则更为灵活,适用于复杂的判断需求。

关系图

下面是一个简单的关系图,表示了字符串包含的关系:

erDiagram
      String --|> contains

在上面的关系图中,String对象通过contains关系来判断是否包含指定的字符串。

序列图

下面是一个简单的序列图示例,展示了判断两个字符串是否包含的过程:

sequenceDiagram
    participant Client
    participant String
    participant contains

    Client->>contains: 调用contains方法
    contains->>String: 判断是否包含指定字符串
    String-->>contains: 返回判断结果
    contains-->>Client: 返回结果

在上面的序列图中,Client通过调用contains方法来判断两个字符串是否包含。contains方法内部调用String的方法进行判断,并返回结果给Client。

通过上述的代码示例和图示,我们可以清晰地了解如何在java中判断两个字符串是否包含。无论是使用contains方法、indexOf方法还是正则表达式,都能够满足不同的判断需求。