Java 从函数的返回中删除尾部0
如何从函数返回中删除尾随零? 这是另一个类中的函数Java 从函数的返回中删除尾部0,java,Java,如何从函数返回中删除尾随零? 这是另一个类中的函数 static public double Area(double side1,double side2){ return side1*side2; } 这里是调用函数 System.out.println("Side 1 : "); b1=new Scanner(System.in); double side1=b1.nextDouble(); System.out.println("Side 2: "); b2=new Scanne
static public double Area(double side1,double side2){
return side1*side2;
}
这里是调用函数
System.out.println("Side 1 : ");
b1=new Scanner(System.in);
double side1=b1.nextDouble();
System.out.println("Side 2: ");
b2=new Scanner(System.in);
double side2=b2.nextDouble();
System.out.println("Area= "+Rectangle.Area(side1, side2));
对于side1=10和side2=10,输出将为
Area = 100.0
当我想要的时候
Area = 100
例如,值0.25和2将为
Area = 0.5
当您想要打印一个
double
时,Java的printf
和其他类似功能允许您控制问题,包括位数、十进制分隔符的使用和零位数的处理。更多信息:您可以使用小数格式
限制小数或删除尾随的0
限制小数
double area = 0.1234;
DecimalFormat numberFormat = new DecimalFormat("#.00");
System.out.println(numberFormat.format(area));
它将输出为0.12
您可以根据需要使用0的数量
或
如果要删除尾随0
请使用。#
因此0.50
将为0.5
DecimalFormat numberFormat = new DecimalFormat("#.#");
您是否理解100和100.0之间在表示上没有区别?这就像要求一个方法以十六进制而不是十进制返回一个
int
。。。这只是一个数字。(当您将其格式化为字符串时,“尾随零”的概念仅适用于double
。但类似BigDecimal
的情况并非如此。)尾随零是显示值的方式的产物,而不是作为值的一部分存储的东西。爪哇!=CobolIf如果在输出/转换为字符串时要删除这些部分:如果要切掉任何小数部分,请使用long
:return(long)(side1*side2)代码>(同时更改方法签名)。或者,如果要对其进行取整,请使用数学.round()
。
DecimalFormat numberFormat = new DecimalFormat("#.#");