Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.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
If-Else Java语法问题_Java_If Statement_Syntax - Fatal编程技术网

If-Else Java语法问题

If-Else Java语法问题,java,if-statement,syntax,Java,If Statement,Syntax,我的逻辑面临一个非常基本的问题。基本上我有两个条件。一是什么时候!安静,另一个是当它!quiet&&u cmdLine.isInteractive 我曾尝试将它们放在if-else块中,但使用else时会出现语法错误,若只使用if语句或if-else-if语句,则不起作用。我已经在下面粘贴了我的代码,需要一些帮助。我只是不知道我在这件事上哪里出了错 if (!quiet) { String targetName = getPrintoutNameFromStartable(sta

我的逻辑面临一个非常基本的问题。基本上我有两个条件。一是什么时候!安静,另一个是当它
!quiet&&u cmdLine.isInteractive

我曾尝试将它们放在if-else块中,但使用else时会出现语法错误,若只使用if语句或if-else-if语句,则不起作用。我已经在下面粘贴了我的代码,需要一些帮助。我只是不知道我在这件事上哪里出了错

if (!quiet) {
        String targetName = getPrintoutNameFromStartable(start,
                    picoName);
        System.out.print("message here");
}

if (_cmdLine.isInteractive()) {
        System.out.println("a different message");

        return 1;
}

我想你要找的是:

if (!quiet && _cmdLine.isInteractive()) {
    // ...
} else if (!quiet) {
    // ...
}

希望这能帮助您理解如何处理两个不同的标志

if (!quiet) {
    String targetName = getPrintoutNameFromStartable(start,
        picoName);
    System.out.print("message here");

    if ( _cmdLine.isInteractive()) {
        System.out.println("a different message");
        return 1;
    }else{
        //do something
    }
}else{
    if ( !_cmdLine.isInteractive()) {
        System.out.println("a different message");
        return 1;
    }else{
        //do something
    }
}

您能发布语法错误的
else
版本吗?
&&
将是嵌套的
if
。因为
if
一个是
true
您仍然需要查看
if
另一个也是。但你不应该这样做。你想让他们处于“如果其他”状态吗?你不认为一个(
!quiet&&u cmdLine.isInteractive
)是另一个(
!quiet
)的子集吗?这是我尝试过的另一个use@samujoe如果
!quiet
为false,则
!quiet&&&u cmdLine.isInteractive
必须为false。这在技术上不是多余的吗?@chieftwpencils else if在&&u cmdLine.isInteractive()为false时执行。我的意思是,检查
!安静
两次在技术上是多余的。当
quiet
true
时,它会尽快使这两个操作都失败。当
quiet
false
时,您已经知道它是
true
。不是向下投票者btw.if(_cmdLine.isInteractive()){System.out.println(“交互模式下不支持命令”);Logger.getLogger(Logger.GLOBAL_Logger_NAME).log(Level.WARNING,“Zoom”);//返回1;}if(!quiet){String targetName=getPrintOutName fromStarTable(开始,picoName);System.out.print(S_关闭+targetName+“…);Logger.getLogger(Logger.GLOBAL_Logger_NAME).log(Level.WARNING,“原始方法”);}当我尝试这个的时候,我得到了一个java空指针异常。我已经尝试过了,完全一样,但它不起作用。y我尝试切换到if-else为什么你认为“它不起作用”?你说了任何可以说明为什么它不应该的话。我想应该是if(!quiet){if(_cmdLine.isInteractive()){System.out.println(“另一条消息”);返回1;}字符串targetName=getPrintoutNameFromStartable(start,picoName);System.out.print(“此处的消息”)}如果你能发布你的完整方法,也许我们可以试着帮助你。尽管这已经是一匙羹了