gpt4 book ai didi

java - 添加 2 个 BigDecimal 值

转载 作者:IT老高 更新时间:2023-10-28 21:04:53 30 4
gpt4 key购买 nike

class Point {

BigDecimal x;
BigDecimal y;

Point(double px, double py) {
x = new BigDecimal(px);
y = new BigDecimal(py);
}

void addFiveToCoordinate(String what) {
if (what.equals("x")) {
BigDecimal z = new BigDecimal(5);
x.add(z);
}
}

void show() {
System.out.print("\nx: " + getX() + "\ny: " + getY());
}

public BigDecimal getX() {
return x;
}

public BigDecimal getY() {
return y;
}

public static void main(String[] args) {
Point p = new Point(1.0, 1.0);
p.addFiveToCoordinate("x");
p.show();
}
}

好的,我想添加 2 个 BigDecimal 值。我正在使用带 double 的构造函数(因为我认为这是可能的——文档中有一个选项)。如果我在主类中使用它,我会得到这个:

x: 1
y: 1

当我使用 System.out.print 显示我的 z 变量时,我得到了这个:

z: 5

最佳答案

BigDecimal 是不可变的。每个操作都会返回一个包含操作结果的新实例:

 BigDecimal sum = x.add(y);

如果你想让 x 改变,你必须这样做

x = x.add(y);

阅读 the javadoc确实有助于理解一个类及其方法是如何工作的。

关于java - 添加 2 个 BigDecimal 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8850441/

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