gpt4 book ai didi

java - 字符串无法与 java 中的星号 (*) 匹配

转载 作者:行者123 更新时间:2023-11-30 08:14:56 27 4
gpt4 key购买 nike

我正在尝试为该程序提供命令行参数。但是当运算符是 * 例如时,它会给出 Invalid operator 2 3 *

import java.io.*;

import java.util.*;

public class Operation{

public static void main(String args[]){
int num1, num2, res=0;
try{
Exception ex = new Exception();
if(args.length < 3)
throw(ex);
}catch (Exception e){
System.out.println("Illegal no. of arguments");
System.exit(0);
}
try{
Exception ex1 = new Exception();
num1 = Integer.parseInt(args[0]);
num2 = Integer.parseInt(args[1]);
if(args[2].equals("+"))
res = num1 + num2;
else if(args[2].equals("-"))
res = num1 - num2;
else if(args[2].equals("*"))
res = num1 * num2;
else if(args[2].equals("/"))
res = num1 / num2;
else
throw(ex1);
}catch (Exception e){
System.out.println("Invalid Operator");
System.exit(0);
}
try{
Exception ex2 = new Exception();
if(res < 0)
throw(ex2);
else
System.out.println("Result = " + res);
}catch (Exception e){
System.out.println("Result is negative");
}
}
}

最佳答案

* 字符很可能永远不会出现在您的 Java 程序中。通常,您用来调用 java 程序的 shell 会将其识别为通配符并将其替换为某些东西;例如当前目录中的所有文件。在命令行调用您的程序时,您是否尝试过“*”?

或者,您可以更改您的程序:不要从命令行读取参数;要求用户一一键入值,请参阅 Getting Keyboard Input

关于java - 字符串无法与 java 中的星号 (*) 匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29214703/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com