1.首先创建商品类,代码如下:
package a;
public class Product {
private String proName;
public String getProName() {
return proName;
}
public void setProName(String proName) {
this.proName = proName;
}
}
2.创建超市类,代码如下:
package a;
public class Market {
private String markName;
private Product[] depot;//创建仓库数组
public String getMarkName() {
return markName;
}
public void setMarkName(String markName) {
this.markName = markName;
}
public Product[] getDepot() {
return depot;
}
public void setDepot(Product[] depot) {
this.depot = depot;
}
//超市卖商品的方法,传递一个参数判断仓库是否含有这个商品
public Product sell(String s){
for(int i=0;i<depot.length;i++){
if(s.equals(depot[i].getProName())){
//if(depot[i].getProName()==s){
return depot[i];
}
}
return null;
}
}
3.创建人类,代码如下:
package a;
public class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//人购物的方法,传递两个参数m:超市 s:商品
public Product shopping(Market m,String s){
return m.sell(s);//调用超市卖商品的方法
}
}
4.创建测试类:
package a;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
//创建物品对象
Product p1=new Product();
Product p2=new Product();
Product p3=new Product();
p1.setProName("苹果");
p2.setProName("香蕉");
p3.setProName("梨");
//创建超市对象
Market m=new Market();
m.setMarkName("水果超市");
Product[] pro={p1,p2,p3};
m.setDepot(pro);//将物品赋值给超市仓库数组
//创建人对象
Person p=new Person();
p.setName("小明");
System.out.println("请输入要进行购买的物品:");
Scanner sc=new Scanner(System.in);
String s=sc.next();
//调用人对象里购物方法去购物
Product result=p.shopping(m, s);
System.out.println();
//输出结果
if(result!=null){
System.out.println(p.getName()+"在"+m.getMarkName()+"买到了"+result.getProName());
}else{
System.out.println(p.getName()+"白跑一趟,在"+m.getMarkName()+"什么都没买到");
}
}
}
测试结果: