gpt4 book ai didi

java - 如何将十进制数字格式化为货币。

转载 作者:行者123 更新时间:2023-12-01 17:31:22 25 4
gpt4 key购买 nike

我想使用数字格式以 vector 形式编写产品的价格。这是我的代码

<%!
class product
{
public String name;
public int price;
public String image;

public product()
{
}
}
%>
<%
NumberFormat nf = NumberFormat.getCurrencyInstance();
DecimalFormatSymbols dfs = new DecimalFormatSymbols();
dfs.setCurrencySymbol("$ ");
dfs.setGroupingSeparator('.');
dfs.setMonetaryDecimalSeparator('.');
((DecimalFormat) nf).setDecimalFormatSymbols(dfs);


Vector<product> vec = new Vector<product>();
gallery obj;

obj=new product();
obj.nama="Dark Chocolate";
obj.price=Integer.parseInt(nf.format(3040000));
obj.image="Image/Dark chocolate.jpg";
vec.add(obj);

obj = new product();
obj.nama="Woodhouse Chocolates";
obj.price=Integer.parseInt(nf.format(6000500));
obj.image="Image/woodhouse_chocolates.jpg";
vec.add(obj);

obj = new product();
obj.name="Semisweet Chocolate";
obj.price=Integer.parseInt(nf.format(3050000));
obj.image="Image/Semisweet chocolate.jpg";
vec.add(obj);

obj = new product();
obj.name="White Chocolate";
obj.price=Integer.parseInt(nf.format(2948000));
obj.image="Image/White chocolate.jpg";
vec.add(obj);

%>

它说

org.apache.jasper.JasperException: An exception occurred processing JSP page

在此部分

 obj.price=Integer.parseInt(nf.format(3040000));
obj.price=Integer.parseInt(nf.format(6000500));
obj.price=Integer.parseInt(nf.format(3050000));
obj.price=Integer.parseInt(nf.format(2948000));

我的错误在哪里?有人可以帮助我吗?

最佳答案

您正在尝试使用一堆随机字符来格式化数字然后尝试将其解析为整数。

那是行不通的。

An Integer是一个没有小数部分和奇特字符的整数。

如果您尝试将 0-9(或负号)以外的任何字符解析为整数,则会抛出 NumberFormatException。

...并且(就像 iangreen 所说)你应该将代码放在 try block 中。

...AND(就像 iangreen 所说),您可以轻松地将这段代码移到其他地方,您可以在其中测试/调试它很多更容易(IDE 或控制台程序)。

...并且您应该始终以大写字母开头类名称。

<小时/>

鉴于您在创建产品之前尝试设置价格格式,因此您应该将它们作为字符串存储在您的产品类别中。 或者您可以将它们存储为 double 或 float ,并在其他时间格式化它们。

关于java - 如何将十进制数字格式化为货币。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10544516/

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