public class TestArgs1 {
public static void main(String[] args) throws NumberFormatException {
if(args.length < 3){
System.out.println("Usage: \"param1\" \"param2\" \"param3\"");
System.exit(-1);
}
else{
double d1 = Double.parseDouble(args[0]);
double d2 = Double.parseDouble(args[2]);
  if(args[1].equals("*")) System.out.println(d1 * d2);//此处的"*"倘若改成其它的如"x"便可通过 else {
System.out.println("Error: please try again!");
  }
}
}
}报Exception啊,怎么回事,和"*"有关系吗?

解决方案 »

  1.   

    if(args[1].equals("*")) 我是说是不是这里的*出错了? 试了好几次 都在这里报Exception
      

  2.   

    如果  你用的是 MyEclipse   
    是这样给 args 赋值的
    Run->Open Run Dialog->Arguments->Program arguments那么 *好就回有问题
      

  3.   

    可能是 * 在Dos有特殊的含义 有什么特殊含义呢
      

  4.   

    操作系统的问题,Windows 的 DOS 自作聪明,你用这个加双引号就正常了:123 "*" 30