首页 > 解决方案 > 如何使用分数输入命令行参数

问题描述

我目前对编程很陌生,我需要学习如何使用command line arguments(不使用scanner)输入两个不同的分数,例如:

java Fractions 12/17 3/18

我面临的问题是我的论点中的“/”除号。我似乎无法将它们与我的整数分开。

就像 GhostCat 所说的那样,我需要接收 a stringofarrays并进行适当的解析string array以确定数字并通过命令行参数控制字符。我无法使用扫描仪作为输入。

标签: javacommand-line

解决方案


您不能使用 / 直接输入分数。如果您的输入需要使用这种格式 2/3,您需要将其加载为字符串,然后使用 split() 方法返回两个可以解析为浮点数的字符串。

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 指出这一点。


推荐阅读