美文网首页
Java命令行输入乘号问题

Java命令行输入乘号问题

作者: 五秋木 | 来源:发表于2017-10-19 11:59 被阅读0次

在使用java制作简单Calculator时,只计算四则运算,代码如下:

public class Calculator {
   public static void main(String[] args) {
   if(args.length<3){
       System.out.println("Usage:java Calculator operator operand2");
       System.exit(0);
   }
   int result = 0;
   switch(args[1].charAt(0))
   {
        case '+': result = Integer.parseInt(args[0])+Integer.parseInt(args[2]);
        break;
        case '-': result = Integer.parseInt(args[0])-Integer.parseInt(args[2]);
        break;
        case '*': result = Integer.parseInt(args[0])*Integer.parseInt(args[2]);
        break;
        case '/': result = Integer.parseInt(args[0])/Integer.parseInt(args[2]);
        break;
   }
   System.out.println(args[0]+" "+args[1]+" "+args[2]+" = "+result);
}
}

在命令行下输入javac Calculator.java编译
之后java Calculator 1 + 2
加减除均没有问题,在运行乘法时出现问题:会列出当前目录下前两个名称,出错。
原因:在命令行时,乘号表示当前目录下所有文件
改正:
在cmd中,*使用双引号引着。
在powershell中,"*"还是出错,在乘号后加个空格不出错。即"* "

相关文章

网友评论

      本文标题:Java命令行输入乘号问题

      本文链接:https://www.haomeiwen.com/subject/muduuxtx.html