请允许我提供有关我遇到问题的更多信息。说我有一些代码
int a;
System.out.print(Enter a number ");
a = keyboard.nextInt
第一个陈述将是
Enter a number
然后用户输入一个数字,比如说12,最后的陈述是
Enter a number 12
注意这一切是怎么回事。我试图做同样的事情,但有一个浮点数,我希望它只显示小数点后的2位数。我试过了
float money;
System.out.printf("Enter your money " + "%.2f\n", money);
money = keyboard.nextFloat();
但我得到一个错误,说钱还没有初始化。但是,如果我写
float money = 0.0f;
System.out.printf("%.2f\n", money + "Enter your money ");
money = keyboard.nextFloat();
输出不是我想要的,它的
Enter your money 0.00
然后用户输入他们的钱,比如1234.567。最终输出是
Enter your money 0.00
1234.58
那么,如何显示1234.58以使最终输出为
Enter your money 1234.58
答案 0 :(得分:0)
System.out.print("Enter your money ");
float money = keyboard.nextFloat();
System.out.printf("%.2f", money);
修改强>
你想要一个解释,所以我会把它给你:D作为java API状态System.out.print
方法将字符串打印到控制台而不输入新行。因此,您将在屏幕上显示“输入您的钱”字符串不带换行符。用户输入keyboard.nextFloat()
后,其余字符串将放在System.out.printf("%.2f", money)
的字符串上。