gpt4 book ai didi

java - 使用 string.format 将 double 转换为字符串

转载 作者:行者123 更新时间:2023-12-02 06:29:50 36 4
gpt4 key购买 nike

所以我在这里有点不知所措。我正在尝试将字符串格式化为仅保留两位小数。我知道您在想什么,我必须将它们作为字符串才能将它们附加到我的 JTextArea (这些是我的 arrayList 的一小部分)。因此,我使用 String.valueof() 将 double 转换为字符串,效果很好,但是我需要对其进行格式化,以便打印出具有 2 位小数的字符串。我的声明等如下

class inventoryItem { //Delcare variables below

String itemName;
String newUnit;
String newFee;
String newValue;
String newInventoryValue;
int itemNumber;
int inStock;
double unitPrice;
double value;
double restockingFee;

double inventoryValue;

public inventoryItem(String itemName, int itemNumber, int inStock, double unitPrice) { //declare variables for this class
this.itemName = itemName;
this.itemNumber = itemNumber;
this.inStock = inStock;
this.unitPrice = unitPrice;
restockingFee = .05 * value;
stockValue();

}

public void stockValue() {
value = unitPrice * inStock;
restockingFee = .05 * unitPrice;
inventoryValue = restockingFee + value;
newUnit = String.valueOf((double) unitPrice);
newFee = String.valueOf((double) restockingFee);
newValue = String.valueOf((double) value);
newInventoryValue = String.valueOf(inventoryValue);

我尝试过做类似的事情

outputText.append("something = $"+ (String.format("%.2f, newUnit))

但这似乎不起作用。有没有办法可以在使用 String.valueOf 时做到这一点?

最佳答案

使用DecimalFormat

示例:

double unitPrice = 1.23235;
java.text.DecimalFormat decimalFormat = new java.text.DecimalFormat( "#,###,###,##0.##" );
String formattedUnitPrice = decimalFormat.format(unitPrice);

输出将为 1.23

关于java - 使用 string.format 将 double 转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20165691/

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