在Java中,如何以不同的文字打印答案?
我知道,如果一个值超过整数的范围,你就给它加上一个L,但你还是要把它打印出来。当你只是打印一个简单的数字时,我理解这样做的概念 当您使用已定义的变量instad时,会发生什么情况 比如说我有类似的东西在Java中,如何以不同的文字打印答案?,java,integer,double,literals,Java,Integer,Double,Literals,我知道,如果一个值超过整数的范围,你就给它加上一个L,但你还是要把它打印出来。当你只是打印一个简单的数字时,我理解这样做的概念 当您使用已定义的变量instad时,会发生什么情况 比如说我有类似的东西 double a = 2.5; System.out.println(a); 我想把“a”打印成整数 感谢您提前给出答案:)例如,您可以使用Math.round System.out.println(Math.round(a)); 也可以将其格式化为整数,如下所示: System.out.pr
double a = 2.5;
System.out.println(a);
我想把“a”打印成整数
感谢您提前给出答案:)例如,您可以使用
Math.round
System.out.println(Math.round(a));
也可以将其格式化为整数,如下所示:
System.out.printf("%.0f%n", a);
将双a转换为
double
并使用a.intValue()
您可以使用
NumberFormat
。有一些预定义的格式可供您的特定用例使用
NumberFormat format = NumberFormat.getIntegerInstance();
double a = 2.5;
System.out.println( format.format( a ) );
但它也允许为更困难的输出创建一个,比如指定小数数。使用
Math.round
或此处提出的其他建议会困难得多。如果将其打印为整数,则会将其四舍五入到最接近的整数。嗯,所有这些方法似乎都有效,我使用的书出于某种原因没有提到任何一种方法。我猜它期望我在堆栈溢出时问这个问题。干杯,伙计们。
NumberFormat format = NumberFormat.getIntegerInstance();
double a = 2.5;
System.out.println( format.format( a ) );