题目描述:
/*
* 超市购物
功能:超市可以进货和销售商品,消费者可以购买超市的商品。
要求:1、商品(名称、单价、数量),超市(名称、商品),消费者(姓名)
2、消费者在超市购买商品,如果该商品存在,显示***消费者在***超市购买了***商品***个,
单价***,金额***元;如果该商品不存在,则显示没买到。
3、不允许有static变量和方法
4、如果用scanner 的话,只能在main用
5、类中方法只能返回值,不允许有syso
1、确认商品存在,2、数量是否满足
if(name && quantity>)
return ***zai***sssss;
*/
物品类
package chapter4.homework;
class Goods {
private String GoodsName;
private double price;
private int quantity;
public String getGoodsName() {
return GoodsName;
}
public void setGoodsName(String goodsName) {
GoodsName = goodsName;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
}
}
超市类
package chapter4.homework;
class Market {
private String marketName;
private Goods[] goodsArr=new Goods[100];
private int numbers;
public boolean add(Goods goods) {//商品添加
if(numbers<=100) {
goodsArr[numbers]=goods;
numbers++;
return true;
}else {
return false;
}
}
public String getMarketName() {
return marketName;
}
public void setMarketName(String marketName) {
this.marketName = marketName;
}
public Goods[] getGoodsArr() {
return goodsArr;
}
public void setGoodsArr(Goods[] goodsArr) {
this.goodsArr = goodsArr;
}
public int getNumbers() {
return numbers;
}
public void setNumbers(int numbers) {
this.numbers = numbers;
}
public Goods find(Market market,String name) {//购买商品
for(int i=0;i<market.getNumbers();i++) {//equal字符串值相等
if(market.getGoodsArr()[i].getGoodsName().equals(name)) {
return market.getGoodsArr()[i];
}
}
return null;
}
}
购买者类
package chapter4.homework;
class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Goods shop(Market market,String name) {//购买商品
return market.find(market, name);
// for(int i=0;i<market.getNumbers();i++) {//equal字符串值相等
// if(market.getGoodsArr()[i].getGoodsName().equals(name)) {
// return market.getGoodsArr()[i];
// }
// }
// return null;
}
}
主函数
package chapter4.homework;
public class Test {
public static void main(String[] args) {
Market m=new Market();
m.setMarketName("大润发");
m.setNumbers(0);
Goods g1=new Goods();
g1.setGoodsName("电视");
g1.setPrice(3000);
g1.setQuantity(5);
Goods g2=new Goods();
g2.setGoodsName("冰箱");
g2.setPrice(2000);
g2.setQuantity(5);
m.add(g1);
m.add(g2);
Person p=new Person();
p.setName("小宁");
int buyNum=2;
String name="电视";
Goods goods=p.shop(m, name);
if(goods!=null) {
if(goods.getQuantity()>buyNum) {
System.out.println(p.getName()+"在"+m.getMarketName()+"购买了"+goods.getGoodsName()+
"价格"+goods.getPrice());
goods.setQuantity(goods.getQuantity()-buyNum);
}else {
System.out.println("商品库存不足!");
}
}else {
System.out.println(m.getNumbers()+"没有"+name);
}
for(int i=0;i<m.getNumbers();i++) {
System.out.println(m.getGoodsArr()[i].getGoodsName()+","+m.getGoodsArr()[i].getQuantity());
}
}
}