Java 此代码没有';执行不当。有人能帮我吗?
测试总是正确的。你需要做什么Java 此代码没有';执行不当。有人能帮我吗?,java,Java,测试总是正确的。你需要做什么 if (true) 相反。代码中的第三行是英语辅音(ch.charAt(0))似乎返回一个布尔值,而您没有将其存储在任何变量中。如果我没有错,请检查一下。如果(真)将始终返回真 而是: if (isEnglishConsonant(ch.charAt(0))) 您忘记在案例语句中添加中断 boolean consonant = isEnglishConsonant(ch.charAt(0)); if (consonant) { println("
if (true)
相反。代码
中的第三行是英语辅音(ch.charAt(0))
似乎返回一个布尔值,而您没有将其存储在任何变量中。如果我没有错,请检查一下。如果(真)
将始终返回真
而是:
if (isEnglishConsonant(ch.charAt(0)))
您忘记在案例
语句中添加中断
boolean consonant = isEnglishConsonant(ch.charAt(0));
if (consonant) {
println("True");
} else {
println("False");
}
好吧,如果你检查真的是真的,那将永远是这样
public void run() {
String ch = readLine ("Enter an alphabet: ");
if (isEnglishConsonant(ch.charAt(0))){
println("True");
} else {
println("False");
}
}
private boolean isEnglishConsonant(char ch){
switch (Character.toUpperCase(ch)){
case 'A': case 'E': case 'I': case 'O': case 'U':
return false;
default:
return true;
}
}
把
Isenglish辅音(ch.charAt(0))
改为true
,这就是你要检查的 这里您不是直接比较布尔返回方法。因此,它不起作用。改成喜欢
if (true){
问题是什么?结果应该是什么?现在的结果是什么?请把问题的标题改成更合适、更不笼统的标题。@Erno:第二个问题。和用户233444,如果您发现其中一个答案对您有所帮助,请接受!但是isEnglishConsonant(ch.charAt(0))返回true或false。好的,当它返回true时,它将执行println(“true”),当它返回false时,它将执行println(“false”),它已经返回false了,那么为什么要中断呢?无法联系到break:)@user233444:很乐意帮忙。如果有一个答案解决了你的问题,记得接受它。:)
public void run() {
String ch = readLine ("Enter an alphabet: ");
if (isEnglishConsonant(ch.charAt(0))){
println("True");
} else {
println("False");
}
}
private boolean isEnglishConsonant(char ch){
switch (Character.toUpperCase(ch)){
case 'A': case 'E': case 'I': case 'O': case 'U':
return false;
default:
return true;
}
}
if (true){
if(isEnglishConsonant(ch.charAt(0)))
{
println("True");
}
else
{
println("False");
}