创建计算器的问题
Issue creating a calculator
我是 java 的初学者,我一直在尝试使用 Swing 制作计算器。到目前为止一切都很好,但我在数字键盘的工作方式上遇到了问题。我希望计算器的输出是一个浮点值,但我希望它是这样,如果您单击“1”,输出将显示“1”,而不是“1.00”。我该怎么做?
此外,我想不出将一个数字附加到另一个数字的方法。例如,如果我输入 1,然后输入 2,输出将是 1.02,而不是 12。如何让程序尽可能使输出为整数?
第一个问题:你先要检查小数点后没有数字,只显示1而不是1.00。为此,您可以检查以下 if 语句是否确实如此:
if(number % 1.0f == 0)
接下来,您想将此数字转换为仅显示不带小数点的数字的字符串,为此您可以将数字转换为 int,然后将其转换为字符串:
String.valueOf((int) number)
对于第二个问题:要将新数字附加到数字,我建议生成一个字符串,其中包含用户使用 StringBuilder 输入的数字。实际上它看起来像:
StringBuilder sb = new StringBuilder();
// when user presses "2" button for example:
sb.append("2");
最后你想把这个生成的字符串转换成一个浮点数以便对其进行计算,你可以这样做:
float value = Float.valueOf(sb.toString());
我是 java 的初学者,我一直在尝试使用 Swing 制作计算器。到目前为止一切都很好,但我在数字键盘的工作方式上遇到了问题。我希望计算器的输出是一个浮点值,但我希望它是这样,如果您单击“1”,输出将显示“1”,而不是“1.00”。我该怎么做?
此外,我想不出将一个数字附加到另一个数字的方法。例如,如果我输入 1,然后输入 2,输出将是 1.02,而不是 12。如何让程序尽可能使输出为整数?
第一个问题:你先要检查小数点后没有数字,只显示1而不是1.00。为此,您可以检查以下 if 语句是否确实如此:
if(number % 1.0f == 0)
接下来,您想将此数字转换为仅显示不带小数点的数字的字符串,为此您可以将数字转换为 int,然后将其转换为字符串:
String.valueOf((int) number)
对于第二个问题:要将新数字附加到数字,我建议生成一个字符串,其中包含用户使用 StringBuilder 输入的数字。实际上它看起来像:
StringBuilder sb = new StringBuilder();
// when user presses "2" button for example:
sb.append("2");
最后你想把这个生成的字符串转换成一个浮点数以便对其进行计算,你可以这样做:
float value = Float.valueOf(sb.toString());