我目前对编程还很陌生,我需要学习如何使用command line arguments
(而不是scanner
)输入两个不同的分数,例如:
java Fractions 12/17 3/18
我面临的问题是论点中的'/'除号。我似乎无法将它们与整数分开。
就像GhostCat所说的一样,我需要接收string
中的arrays
,并对string array
进行适当的解析以确定数字并通过命令行参数控制字符。我无法将扫描仪用作输入。
答案 0 :(得分:1)
您不能直接使用/输入分数。如果您的输入需要使用2/3格式,则需要将其作为字符串加载,然后使用split()方法将返回两个字符串,您可以将它们解析为float。
String fraction = args[0]; // args[0]="12/17"
String[] splittedFraction = fraction.split("/");
float numerator = Float.parseFloat(splittedFraction[0]);
float denominator = Float.parseFloat(splittedFraction[1]);
您可以根据需要使用int而不是float。
以同样的方式处理第二个分数args [1]
编辑:我没有意识到您将输入作为命令行的参数。感谢@GhostCat指出这一点。
答案 1 :(得分:0)
命令行不理解/表示您本身想要一个分数。考虑将2/3作为字符串,并在程序中解析它。