/* insert()方法的使用 给实数小数点前每隔三位加一个,号*/
import java.util.Scanner;
class Goods{
String[] goods = new String[]{"电风扇","洗衣机","电视机","电冰箱","空调机"};
double[] price = {120.69,1200,2000,1800.88,2669}; //价格
//打印商品清单
public void show(){
System.out.println("\t*****商 品 清 单*****\n");
System.out.println("\t编号\t商品\t价格");
for (int i=0; i<goods.length; i++) {
System.out.print("\t"+(i+1)+"\t"+goods[i]);//输出编号与商品名;
System.out.println("\t"+change(price[i])); //每次调用change函数,格式化价格的表示方式
}
}
//格式化价格(将)
private StringBuffer change(double price){
StringBuffer fprice; //定义一个StringBuffer类型的变量表示格式后的价格
fprice = new StringBuffer(String.valueOf(price));//String.valueOf(price)是将price的值转换为String类型
for (int i=fprice.indexOf(".")-3; i>0; i-=3) { //找到小数点,再确定加入点的位置
fprice.insert(i, ","); //在指定位置插入","号;
}
return fprice; //返回修改后的格式,price此时不再是double类型,而是StringBuffer类型
}
}
public class Dm{
public static void main(String[] args){
Goods test = new Goods();
test.show();
}
}/*-----------------------------------
*****商 品 清 单*****
编号 商品 价格
1 电风扇 120.69
2 洗衣机 1,200.0
3 电视机 2,000.0
4 电冰箱 1,800.88
5 空调机 2,669.0-----------------------------------*/
StringBuffer类的方法应用_小数点前每隔三位加一个,号
最新推荐文章于 2023-01-10 16:03:44 发布