2

我正在尝试在 Eclipse 中运行此代码,但是每当我尝试仅使用参数运行时-es,就像我输入了-esAND一样-h。这是代码:

public class Option
{
    public static void main( String[] args )
    {
        if ( args[0].equals("-en") )
        {
            System.out.println( "Langauge is set to English") ;
        }
        else if ( args[0].equals("-es") )
        {
            System.out.println( "El idioma es espanol") ;
        }
        else if ( args[0].equals("h") ) ;
        {
            System.out.print( "\tHelp\n\n\t-es\tSpanish\n\t-en\tEnglsish" ) ; 
        }
    }
}
4

2 回答 2

6

消除;这一行中的:

else if ( args[0].equals("h") ) ;

Java 将该分号视为 的主体else if,并且始终执行它之后的大括号中的块。

删除该分号将允许将其后面的大括号中的块视为 的块else if,这正是您想要的。

于 2013-07-23T00:28:18.427 回答
2

这是一个错字:您;在第三个if陈述之后有一个。

删除它,它会工作。

这一直在发生:D

于 2013-07-23T00:29:28.317 回答