我正在使用 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/