import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
public class Basic2 {
public static void main(String[] args) {
List<Map<String, Object>> allDate = newDate();//所有信息=原始数据
System.out.println("--------化妆品信息--------");
Scanner sc = new Scanner(System.in);
boolean loop = true;
while (loop) {
System.out.println("1.显示所有信息\n2.添加新化妆品\n3.退出");
System.out.println("输入编号");
int s = sc.nextInt();
switch (s) {
case 1:
renderDate(allDate);//显示所有信息=原始数据
break;
case 2:
System.out.println("输入新化妆品信息");
Map<String, Object> newDate = inputDate();
System.out.println("输入结束");
allDate.add(newDate);
int a = allDate.size();
System.out.println("添加成功,目前共有"+a+"条化妆品信息");
break;
case 3:
loop = false;
System.out.println("已退出");
break;
default:
System.out.println("没有这个操作");
break;
}
}
}
//1.显示所有信息
public static void renderDate(List<Map<String, Object>> em){
System.out.println("所有信息如下:");
System.out.print("名称\t");
System.out.print("\t规格 \t ");
System.out.print("产地 \t ");
System.out.print("适用肤质 \t ");
System.out.print("\t\t保质期 \t ");
System.out.print("\t 功效 \t ");
System.out.print(" 价格 \n");
for (int i = 0; i < em.size(); i++) {
Map<String, Object> s = em.get(i);
String c = (String)s.get("cm_name");
System.out.print(c+"\t ");
System.out.print(s.get("specif")+"\t ");
System.out.print("\t "+s.get("addr")+"");
System.out.print("\t\t "+s.get("suit")+"\t ");
System.out.print("\t "+s.get("before_date")+"\t ");
System.out.print("\t\t "+s.get("effect")+"\t ");
System.out.print("\t "+s.get("price")+" \n");
}
}
//2.添加新化妆品
public static Map<String, Object> inputDate(){
Scanner scan = new Scanner(System.in);
System.out.print("输入化妆品名称:");
String cm = scan.next();
System.out.print("输入化妆品产地");
String addr = scan.next();
System.out.print("输入适用肤质");
String suit = scan.next();
System.out.print("输入化妆品保质期");
String date = scan.next();
System.out.print("输入化妆品功效");
String effect = scan.next();
System.out.print("输入化妆品价格");
int price = scan.nextInt();
List<String> p = new ArrayList<>();
while (true) {
System.out.println("输入化妆品规格(Q/q代表结束)");
String e = scan.next();
if(e.equals("q") || e.equals("Q")){
break;
}else{
p.add(e);
}
}
Map<String, Object> aa = new HashMap<>();
aa.put("cm_name", cm);
aa.put("specif", p);
aa.put("addr", addr);
aa.put("suit", suit);
aa.put("before_date", date);
aa.put("effect", effect);
aa.put("price", price);
return aa;
}
//原始数据
public static List<Map<String, Object>> newDate(){
List<Map<String, Object>> l = new ArrayList<>();
Map<String, Object> map = new HashMap<>();//1
map.put("cm_name","Lamer");
List<String> li = new ArrayList<>();
li.add("100ml");
li.add("150ml");
map.put("specif", li);
map.put("addr", "美国");
map.put("suit", "所有肤质");
map.put("before_date", "2025-08-31");
map.put("effect", "保湿");
map.put("price", 1290);
Map<String, Object> map2 = new HashMap<>();//2
map2.put("cm_name", "HR");
List<String> li2 = new ArrayList<>();
li2.add("30ml");
li2.add("50ml");
map2.put("specif", li2);
map2.put("addr", "法国");
map2.put("suit", "所有肤质");
map2.put("before_date", "2024-12-31");
map2.put("effect", "提拉紧致");
map2.put("price", 2599);
Map<String, Object> map3 = new HashMap<>();
map3.put("cm_name", "Lancome");
List<String> li3 = new ArrayList<>();
li3.add("30ml");
li3.add("60ml");
map3.put("specif", li3);
map3.put("addr", "法国");
map3.put("suit", "干性肤质");
map3.put("before_date", "2025-01-10");
map3.put("effect", "抗皱");
map3.put("price", 1450);
Map<String, Object> map4 = new HashMap<>();
map4.put("cm_name", "Valmont");
List<String> li4 = new ArrayList<>();
li4.add("15ml");
li4.add("45ml");
li4.add("50ml");
map4.put("specif", li4);
map4.put("addr", "瑞士");
map4.put("suit", "油性肤质");
map4.put("before_date", "2025-06-30");
map4.put("effect", "滋养");
map4.put("price", 2610);
Map<String, Object> map5 = new HashMap<>();
map5.put("cm_name","Skll");
List<String> li5 = new ArrayList<>();
li5.add("75ml");
li5.add("100ml");
map5.put("specif", li5);
map5.put("addr", "日本");
map5.put("suit", "所有肤质");
map5.put("before_date", "2024-10-31");
map5.put("effect", "修护");
map5.put("price", 1540);
l.add(map);
l.add(map2);
l.add(map3);
l.add(map4);
l.add(map5);
System.out.println(l);
return l;
}
}
ecplise list与map练习
于 2022-11-03 19:32:41 首次发布