java - 如何判断一个字符串是否可以生成另一个字符串

标签 java string contains

我正在使用 contains 来查看 String (A) 是否可以生成 String(B)(均取自用户)

package trabajogrupal;

import java.util.Scanner;

public class TrabajoGrupal {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        char resp1 = 's';
        String resp2 = "";
        while (resp1 == 's') {
            System.out.println("Ingrese la primer cadena ");
            String cadena = in.nextLine().toLowerCase();
            System.out.println("Ingrese la segunda cadena ");
            String cadena1 = in.nextLine().toLowerCase();
            if (cadena.contains(cadena1)) {
                System.out.println("La cadena " + cadena + " puede generar la cadena " + cadena1);
            } else {
                System.out.println("La cadena " + cadena + " no puede generar la cadena " + cadena1);
            }
            System.out.println("Desea continuar ");
            resp2 = in.nextLine();
            resp2 = resp2.toLowerCase();
            resp1 = resp2.charAt(0);
        }
    }
}

第一个字符串应该包含第二个字符串,但发生的情况是它不断进入 else 语句。为什么?

最佳答案

遍历字符串 B 中的所有字符并检查该字符是否在字符串 A 中。

通过使用 A.indexOf(B 中的每个字符) 来完成此操作。只要它不返回 - 1,该字符就在字符串 A 中。

关于java - 如何判断一个字符串是否可以生成另一个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23430126/

相关文章:

ios - NSPredicate 数组包含问题

java - 在java中将字符更改为字符串

java - 错误 : package android. support.v7.app 不存在 问题

java - String.split() 将保留原始的 char 数组在里面

Python每n个字符拆分字符串

java - 子串索引范围

java - 如何使用 for 循环使用 "%"分割字符串

java - JSP:即使我无法显示错误页面,我如何才能让代码继续运行?

java - 将 Moxy 设置为默认 jaxb 实现提供者

Java contains() 与 equals() 不符