在Java中执行时将参数传递给main方法

时间:2015-11-06 22:26:29

标签: java

我试图在执行时将参数传递给main方法。这个想法最终我将把它集成到可以发送电子邮件/文本通知的代码中,另一个程序将用它来自动发送电子邮件。

在cmd中的运行时,我在正确的文件夹中,文件名是PassArgs.jar。

我键入了“java -jar PassArgs.jar em”(没有引号),希望得到输出'1',而是控制台显示“Invalid argument”。我在该块中添加了语句来打印出数组变量中的第一个元素(这是一个字符串数组),果然,返回了em。

我做错了什么?为什么Java不将'em'识别为有效参数? 任何帮助,将不胜感激。谢谢!

public class PassArgs {

public static void main(String[] vars) {



    //check to see if too many arguments are passed
    if (vars.length!=1)
    {
        System.out.println("Not correct number of args");
    }

    else
    {
    if (vars[0] == "em")
    {
        System.out.println("1");
        //Read email addresses from file
        //Send a physical email to a @domain.com address
    }
    else if (vars[0] == "te")
    {
        System.out.println("2");
        //read phonenumber@domain.com from file
        //Send a text message to mobile phones. 
    }
    else if (vars[0] == "bo")
    {
        System.out.println("3");
        //read from both documents
        //Send email and text to mobile phones
    }
    else
    {
        System.out.println("Invalid argument");
        System.out.println(vars[0]);
    }
    }

}

}

0 个答案:

没有答案