Java使用字符串生成器来保存购物车中的商品信息,并能实现商品信息的添加、删除以及修改等功能
怎么实现方法show(),可以将购物车中所有的商品信息输出,并显示购物车中商品的总价。急求帮助!!!谢谢!!以下是代码:publicclassGoods{publicSt...
怎么实现方法 show(),可以将购物车中所有的商品信息输出,
并显示购物车中商品的总价。 急求帮助!!!谢谢!!以下是代码:
public class Goods {
public String gname;
public float gprice;
public int gnum;
public float gtotal;
}
public class Cart {
public StringBuilder data;
public float total;
public Cart(){
data=new StringBuilder();
}
public void buy(Goods g){
g.gtotal=g.gnum*g.gprice;
total=total+g.gtotal;
data.append("[");
data.append(g.gname+":");
data.append(g.gprice+":");
data.append(g.gnum+":");
data.append(g.gtotal);
data.append("]");
}
public void delete(Goods g){
int s=data.indexOf(g.gname);
int e=data.indexOf("]", s);
data.delete(s-1, e+1);
}
public void update(Goods g){
data.replace(3, 10, "["+g.gname+":"+g.gprice+":"+g.gnum+":"+g.gtotal);
}
public void show(){
}
public class Execute {
public static void main(String[] args) {
// TODO Auto-generated method stub
Goods g1=new Goods();
g1.gname="皮鞋";
g1.gprice=800;
g1.gnum=1;
Goods g2=new Goods();
g1.gname="唇膏";
g1.gprice=350;
g1.gnum=2;
Cart cart=new Cart();
cart.buy(g1);
cart.buy(g2);
cart.show();
cart.delete(g1);
cart.show();
}
} 展开
并显示购物车中商品的总价。 急求帮助!!!谢谢!!以下是代码:
public class Goods {
public String gname;
public float gprice;
public int gnum;
public float gtotal;
}
public class Cart {
public StringBuilder data;
public float total;
public Cart(){
data=new StringBuilder();
}
public void buy(Goods g){
g.gtotal=g.gnum*g.gprice;
total=total+g.gtotal;
data.append("[");
data.append(g.gname+":");
data.append(g.gprice+":");
data.append(g.gnum+":");
data.append(g.gtotal);
data.append("]");
}
public void delete(Goods g){
int s=data.indexOf(g.gname);
int e=data.indexOf("]", s);
data.delete(s-1, e+1);
}
public void update(Goods g){
data.replace(3, 10, "["+g.gname+":"+g.gprice+":"+g.gnum+":"+g.gtotal);
}
public void show(){
}
public class Execute {
public static void main(String[] args) {
// TODO Auto-generated method stub
Goods g1=new Goods();
g1.gname="皮鞋";
g1.gprice=800;
g1.gnum=1;
Goods g2=new Goods();
g1.gname="唇膏";
g1.gprice=350;
g1.gnum=2;
Cart cart=new Cart();
cart.buy(g1);
cart.buy(g2);
cart.show();
cart.delete(g1);
cart.show();
}
} 展开
1个回答
展开全部
public class Cart {
public StringBuilder data;
public float total;
public Cart(){
data=new StringBuilder();
}
public void buy(Goods g){
g.gtotal=g.gnum*g.gprice;
total=total+g.gtotal;
data.append("[");
data.append(g.gname+"|");
data.append(g.gprice+"|");
data.append(g.gnum+"|"); //还是竖线看着方便
data.append(g.gtotal);
data.append("]");
}
public void delete(Goods g){
int s=data.indexOf(g.gname);
int e=data.indexOf("]", s);
data.delete(s-1, e+1);
total=total-g.gtotal; //删除商品 ,需要修改总额
}
public void update(Goods g){
data.replace(3, 10, "["+g.gname+"|"+g.gprice+"|"+g.gnum+"|"+g.gtotal);
}
public void show(){
System.out.print("总计金额:" + total + " ") ;
System.out.println(data);
}
}
//Excute类里有点小错误,
//总觉得update方法 不对头,你想怎么做?
追问
没事了,已经解决了,谢谢
另外测试了下,update方法是可行的
博思aippt
2024-07-20 广告
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT...
点击进入详情页
本回答由博思aippt提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询