StringBuffer类的方法应用_小数点前每隔三位加一个,号

/* 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

-----------------------------------*/


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值