Я хотел написать цену для продукта в векторе, используя формат чисел. Вот мой кодКак форматировать десятичное число в качестве валюты.
<%!
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: произошло исключение обработки JSP страницы
в этом разделе
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));
Где моя ошибка? Может ли кто-нибудь мне помочь?
Что представляют собой эти цифры (3040000, 6000500, 3050000, 2948000)? Являются ли эти долларовые ценности? Например, шоколад в три миллиона долларов? –