Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 此代码没有';执行不当。有人能帮我吗?_Java - Fatal编程技术网

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");
}