-
购物车设计:某电商平台,为方便商品展示,需要将商品分类。在购物时,可将不同类别的商品加入购物车,并自动计价。假设购买如下商品:U盘2个(每只100元);显示器1个(2000元);音箱一对(300元)。请设计购物车,能添加、移除商品,并自动计算出总价格。(提示:购物车内有商品数组,以容纳不同种类的商品)
-
发票打印:假设需要打印发票,发票中包含如下内容:抬头、订单号、货物名称、规格型号、数量、单价、金额、总金额等。其中,货物名称由商家自定义,如音箱,货物名称:创新小音箱,规格型号:Inspire T12。请模拟打印上述发票信息。
提示:基于商品中约定发票格式;具体商品的toString()中填入个性化信息。
package judge;
import java.util.Random;
class commodity{ //商品
private String type,size;
public commodity(String s) { type=s;}
public String getType() { return type; }
public String getSize() { return size; }
public double price() { return 0; }
public void addNumber(int n) { ;}
public void deleteNumber() { ;}
public int getNumber() { return 0;}
}
class Usb extends commodity{
private double p=100;
private String size ="Inspire T10";
public static int number;
public void addNumber(int n) { number+=n;}
public void deleteNumber() { number--;}
public String getSize() { return size; }
public int getNumber() { return number;}
public Usb() { super("U盘"); }
public double price() { return p; }
public String toString() { return getType()+"t"+getSize()+"t"+getNumber()+"t"+price()+"t"+price()*getNumber(); }
public static Usb Create() { return new Usb(); }
}
class Screen extends commodity{
private double p=2000;
private String size ="Inspire T11";
public static int number;
public void addNumber(int n) { number+=n;}
public void deleteNumber() { number--;}
public int getNumber() { return number;}
public String getSize() { return size; }
public Screen() { super("显示器"); }
public double price() { return p; }
public String toString() { return getType()+"t"+getSize()+"t"+getNumber()+"t"+price()+"t"+price()*getNumber(); }
public static Screen Create() { return new Screen(); }
}
class Music extends commodity{
private double p=300;
private String size ="Inspire T12";
public static int number;
public void addNumber(int n) { number+=n;}
public void deleteNumber() { number--;}
public int getNumber() { return number;}
public String getSize() { return size; }
public Music() { super("一对音箱"); }
public double price() { return p; }
public String toString() { return getType()+"t"+getSize()+"t"+getNumber()+"t"+price()+"t"+price()*getNumber(); }
public static Music Create() { return new Music(); }
}
class shoppingCart{
private commodity[] commodities;
private int totalnum;//商品总数量
private int cartlen=30; //购物车最大容量
public shoppingCart () {
commodities = new commodity[cartlen];
}
public void filtrate() {
commodity[] com=new commodity[cartlen];
com[0]=commodities[0];
int i,j,k; i=0;j=0;
while(i cartlen)
{
System.out.print("购物车已满");
return ;
}
for(int i=totalnum;i



