Так что я здесь как-то в убытке. Я пытаюсь отформатировать строки, чтобы их было всего 2 десятичных знака. Я знаю, что вы думаете, и я должен иметь их как строки, чтобы добавить их в JTextArea (это небольшая часть моего списка массивов). Поэтому я преобразовал двойники в строки, используя String.valueof(), который отлично работает, однако мне нужно отформатировать их, чтобы распечатать строку с двумя десятичными знаками. Мои delcarations и такие следующиеИспользование string.format с удвоением, преобразованным в строку
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?
Так вы говорите, чтобы сделать это в момент печати его, или перед использованием String.valueOf()? Причина, по которой я спрашиваю, заключается в том, что она должна быть преобразована в строку до ее распечатки. – kerinr
Да, я говорю, вам лучше форматировать ваше значение с помощью предварительно определенного десятичного формата. Попробуйте Google DecimalFormat. Это то, что вам нужно. – Devrim
Я правильно ответил на ваш ответ, однако мне пришлось немного изменить это, чтобы заставить его работать. Я в конечном итоге импортировал DecimalFormat, а затем создал новый формат, как вы сказали выше. Однако, чтобы заставить его правильно распечатываться, мне пришлось сделать что-то вроде «formatted.format (unitPrice)», и это сработало как шарм. – kerinr