【发布时间】:2017-02-18 05:55:37
【问题描述】:
我正在尝试让这个简单的程序运行,但我不确定我做错了什么;我尝试制作一个新文件以查看问题是否与我的语法有关,但它仍在发生。这里是:
public class test {
public static void main(String[] args) {
String operator = args[0];
switch(operator) {
case "*":
System.out.println("Hello");
break;
}
}
}
我正在尝试先在我的终端上运行这个程序
$ javac test.java
然后与参数一起实际运行程序
$ java test *
然后我什么也没得到,有什么原因吗?当“*”替换为“+”时似乎可以工作。
我还注意到它只有在我输入时才会起作用
$ java test "*" //notice the quotation marks
为什么不带括号的星号即使是字符串也不起作用,但不带括号的“+”可以工作?有什么我遗漏的吗?
【问题讨论】:
-
括号里的意思是引号吗?
-
在切换之前打印
operator的值可以帮助您了解发生了什么。 (艾略特的评论) -
@River 是的,我的意思是星号,哎呀。
-
@asterisks?
*" ()
标签: java string switch-statement