超市购物程序

 1 public class Market {
 2     // 1. 定义超市名称的字符串变量
 3     // 因为String是大写了 首字母 所以它是类  又因为类的默认值是null 所以String的默认值就是null
 4     private String marketName;
 5     // 2. 定义的是仓库  类型:产品类型的数组
 6     private Product[] productArray;
 7     public String getMarketName(){return marketName;}
 8     // market.setMarketName("旺财");
 9     public void setMarketName(String marketName){ // 紫色 名称 = 黑色名称 “旺财”
10         this.marketName = marketName;
11     }
12 
13     public Product[] getProductArray() {
14         return productArray;
15     }
16     public void setProductArray(Product[] productArray){
17         this.productArray = productArray;
18     }
19 
20     /**
21      *  售货方法
22      *  返回值类型:因为卖的是一个商品、因此返回值是一个商品
23      * @param name  指定的商品名称
24      * @return  如果有商品 会返回商品、 没有商品 会返回空
25      */
26     public Product sell(String name){// name 就应该是 霸王洗发水
27         for (int i = 0; i < productArray.length; i++) {
28             if (productArray[i].getProductName().equals(name)){
29                 return productArray[i];
30             }
31         }
32         return null;
33     }
34 }
 1 /*
 2  3  */
 4 public class Person {
 5     // 1. 定义 人名
 6     private String name;
 7     // 2. 生成对应的getter和setter方法
 8     public String getName(){
 9         return name;
10     }
11     public void setName(String name){
12         this.name = name;
13     }
14 
15     /**
16      * 购物
17      * @param market        超市对象
18      * @param productName   买什么商品
19      * @return
20      */
21     public Product shopping(Market market, String productName){// 大润发
22         // 超市有一个方法叫做 卖货方法 参数是 买什么商品
23         // return market.sell(霸王洗发水);
24         return market.sell(productName);
25     }
26 }
 1 /*
 2         产品的类
 3  */
 4 public class Product {
 5     // 1. 定义产品名称/商品名称
 6     public String productName;
 7     // 2. 生成对应的getter和setter方法
 8     public String getProductName(){
 9         return productName;
10     }
11     public void setProductName(String productName){
12         this.productName = productName;
13     }
14 }
 1 import java.util.Scanner;
 2 
 3 public class TestMarket {
 4     public static void main(String[] args) {
 5 
 6         // 1. 创建对象 商品对象
 7         Product p1 = new Product();
 8         Product p2 = new Product();
 9         Product p3 = new Product();
10         Product p4 = new Product();
11         Product p5 = new Product();
12 
13         // 2. 设置商品名称
14         p1.setProductName("霸王");
15         p2.setProductName("电冰箱");
16         p3.setProductName("电脑");
17         p4.setProductName("洗衣机");
18         p5.setProductName("空调");
19 
20         // 3. 创建超市对象
21         Market m1 = new Market();
22         Market m2 = new Market();
23 
24         m1.setMarketName("大润发");
25         m1.setProductArray(new  Product[]{p1,p2,p3,p4,p5});
26 
27         m2.setMarketName("家家悦");
28         m2.setProductArray(new  Product[]{p1,p2,p4,p5});
29 
30         // 4. 创建消费者对象
31         Person p = new Person();
32         p.setName("旺财");
33 
34         Scanner sc = new Scanner(System.in);
35         System.out.println("请输入您需要购买商品的名称:");
36         String wantBuy = sc.nextLine();
37 
38         Product result = p.shopping(m1,wantBuy);
39 
40         if (result != null){
41             // 买到
42             System.out.println(p.getName()+"去"+m1.getMarketName()+"买到了"+result.getProductName());
43         }else {
44             // 没有买到
45             System.out.println(p.getName()+"去"+m1.getMarketName()+"什么都没有买到");
46         }
47     }
48 }
posted @ 2019-09-29 15:56  王纪雪  阅读(352)  评论(0编辑  收藏  举报