Goods:
public class Goods {
private String no;
private String name;
private double price;
private String shop;
private String type;
public Goods() {
}
public Goods(String no, String name, double price, String shop, String type) {
this.no = no;
this.name = name;
this.price = price;
this.shop = shop;
this.type = type;
}
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getShop() {
return shop;
}
public void setShop(String shop) {
this.shop = shop;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
@Override
public String toString() {
return "Goods{" +
"no='" + no + '\'' +
", name='" + name + '\'' +
", price=" + price +
", shop='" + shop + '\'' +
", type='" + type + '\'' +
'}';
}
}
GoodsManager:
import java.util.Collection;
import java.util.List;
public interface GoodsManager {
public void add_goods();
public void del_goods();
public void update_goods();
public Goods findByNo();
public Collection<Goods> findAll();
public List<Goods> findByName();
public List<Goods> findByPrice();
}
GoodsManagerImpl:
import java.util.*;
public class GoodsManagerImpl implements GoodsManager{
private Map<String,Goods> goods_list=new HashMap<>();
private int size=0;
@Override
public void add_goods() {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入添加商品的名称");
String name=scanner.next();
System.out.println("请输入添加商品的价格");
double price=9999;
try {
price = scanner.nextDouble();
}catch(Exception e){
}
System.out.println("商家名称");
String shop=scanner.next();
System.out.println("商品的分类");
String type=scanner.next();
String no=UUID.randomUUID().toString().concat(size+"");
Goods goods=new Goods(no,name,price,shop,type);
goods_list.put(no,goods);
size++;
}
@Override
public void del_goods() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入删除的商品编号");
String no=scanner.next();
System.out.println("你确定要删除该商品吗?(y/n)");
String ans=scanner.next();
if(ans.toLowerCase().equals("y")){
goods_list.remove(no);
}else{
System.out.println("删除取消,你可以选择其它操作");
}
}
@Override
public void update_goods() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入修改商品的商品编号:");
String no=scanner.next();
Goods goods=goods_list.get(no);
System.out.println("商品名称的原来内容:");
System.out.println(goods.getName());
System.out.println("请输入修改后的名称");
String name=scanner.next();
System.out.println("商品名称的原来价格:");
System.out.println(goods.getPrice());
System.out.println("请输入修改后的价格");
double price=goods.getPrice();
try{
price=scanner.nextDouble();
}catch(Exception e){
}
System.out.println("商品名称的店铺名称:");
System.out.println(goods.getShop());
System.out.println("请输入修改后的店铺名称");
String shop=scanner.next();
System.out.println("商品名称的商品类别:");
System.out.println(goods.getType());
System.out.println("请输入修改后的商品类别");
String type=scanner.next();
goods=new Goods(goods.getNo(),name,price,shop,type);
goods_list.put(goods.getNo(),goods);
}
@Override
public Goods findByNo() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入查询的商品编号:");
String no=scanner.next();
return goods_list.get(no);
}
@Override
public Collection<Goods> findAll() {
//直接使用values显示所有的值
return goods_list.values();
}
@Override
public List<Goods> findByName() {
Scanner scanner = new Scanner(System.in);
System.out.println("输入需要查询的商品名称:");
String name=scanner.next();
List<Goods> myresult=new ArrayList<>();
Collection<Goods> mygoods=goods_list.values();
Iterator<Goods> myiter=mygoods.iterator();
while(myiter.hasNext()){
Goods goods=myiter.next();
if(goods.getName().indexOf(name)>-1){
myresult.add(goods);
}
}
return myresult;
}
@Override
public List<Goods> findByPrice() {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入查询商品价格的开始区间:");
double start=0;
double end=0;
try {
start=scanner.nextDouble();
}catch(Exception e){
}
System.out.println("请输入查询商品价格的结束区间:");
try {
end=scanner.nextDouble();
}catch(Exception e){
}
List<Goods> myresult=new ArrayList<>();
Collection<Goods> mygoods=goods_list.values();
Iterator<Goods> myiter=mygoods.iterator();
while(myiter.hasNext()){
Goods goods=myiter.next();
if(goods.getPrice()>=start && goods.getPrice()<=end){
myresult.add(goods);
}
}
return myresult;
}
}
MyMain:
import java.util.Scanner;
public class MyMain {
public static void main(String[] args) {
System.out.println("-----------------------");
System.out.println(" 商品的后台管理系统");
System.out.println(" (商家版)");
System.out.println(" 版本号:v1.0");
System.out.println(" 作者:CCCCC");
System.out.println("-----------------------");
Scanner scanner = new Scanner(System.in);
char function_no='0';
GoodsManagerImpl manager = new GoodsManagerImpl();
while(true){
System.out.println("-----------------------");
System.out.println("1-------添加商品");
System.out.println("2-------删除商品");
System.out.println("3-------修改商品");
System.out.println("4-------查询所有商品");
System.out.println("5-------按编号查询特定商品");
System.out.println("6-------按商品名称查询部分商品");
System.out.println("7-------按价格区间查询部分商品");
System.out.println("8-------退出");
System.out.println("---------------------------");
System.out.println("请选择操作的功能编号:");
String myfunction_no=scanner.next();
System.out.println(myfunction_no);
function_no=myfunction_no.toCharArray()[0];
if(function_no=='8'){
break;
}
switch(function_no){
case '1': manager.add_goods();break;
case '2': manager.del_goods();break;
case '3': manager.update_goods();break;
case '4':
System.out.println(manager.findAll());break;
case '5':
System.out.println(manager.findByNo());break;
case '6':
System.out.println(manager.findByName());break;
case '7':
System.out.println(manager.findByPrice());break;
}
}
}
}
MyMain1:
import java.util.Scanner;
public class MyMain1 {
public static void main(String[] args) {
GoodsManagerImpl goodsManager = new GoodsManagerImpl();
goodsManager.add_goods();
System.out.println(goodsManager.findAll());
Scanner scanner = new Scanner(System.in);
System.out.println("输入查询的商品名称");
String name=scanner.next();
System.out.println(goodsManager.findByName());
}
}
MyMain2:
import java.util.Scanner;
public class MyMain2 {
public static void main(String[] args) {
GoodsManagerImpl goodsManager = new GoodsManagerImpl();
goodsManager.add_goods();
System.out.println(goodsManager.findAll());
}
}