gpt4 book ai didi

Java 重写多个成员变量的 toString

转载 作者:行者123 更新时间:2023-11-30 03:21:12 24 4
gpt4 key购买 nike

我有以下类(class)

public class Foo {
private long var1;
private float var2;
private double var3;
/* getter and setter

*/
}

要将数值打印到命令行,我使用 String.valueOf(obj.getVar2()),但这将导致 9.888888888。有没有什么方法可以为所有数字 getter (浮点型、 double 型)生成格式化输出?我有一个函数 'bar' ,它将给定的数值格式化为字符串。现在,我想调用 obj.getVar2().toString() 等函数,以从“bar”获取格式化字符串形式的数值。可能吗?

最佳答案

获取格式化数字的方法有很多:

class Foo {
private long var1;
private float var2;
private double var3;

public double getVar3() { return var3; }
public float getVar2() { return var2; }
public long getVar1() { return var1; }

public String getFormatVar3() {
// third way
return String.format("%XXX", var3);
// or
return this.bar(var3);
}
@Override
public String toString() {
// first way
return String.format("%XXX %XXX %XXX", var1, var2, var3);
}

public static void main(String[] args) {
// second way
Foo foo = new Foo();
String format = String.format("%XXX", foo.getVar1());
}

private String bar(Number n) {
// discover type of number
return String.format("%XXX", n);
}
}

其中,%XXX 是您的格式。

关于Java 重写多个成员变量的 toString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31298791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com