public static void main(String[] args) {
//For String
Scanner input = new Scanner(System.in);
//For Letter
Scanner word = new Scanner(System.in);
String name;
//Input For a String
System.out.println("Enter A String");
name = input.nextLine();
//Input For a Char
char letter[] = new char[3];
System.out.println("Enter a Letter You Want to Search ");
for(char c : letter)
letter = word.nextLine().toCharArray();
elfish(letter, name);
}
public static void elfish(char letter[], String name) {
if(name.toLowerCase().contains(name.valueOf(letter).toLowerCase())) {
System.out.println("Yes The Letter Contains Elfish");
} else {
System.out.println("You're Word is not in this String");
}
}
我正在制作即将完成的节目。它实际上在字符串中搜索所需的字母,如果条件为真,则打印“if block”,如果条件为false,则“else block”应该运行但实际上它现在不起作用。只有“if block”正在运行。 “else block”也正常工作,直到它直接放在main函数中。请告诉我哪里出了什么问题。
答案 0 :(得分:0)
在将任何内容放入数组之前,您尝试迭代字母。如果您取出for
循环(保留letter
的分配),代码应该在许多情况下正常运行。我不知道你想如何验证输入。
我猜你是新人。学习使用调试器可能会让人不知所措,但它是一个强大的工具。对于每个调试器和IDE,它会略有不同,但过程是相同的。
这里有更多信息:Breakpoints and step by step debug in Java?
但是,在这种情况下,在Google上查找IDE指南可能是最佳选择。