可以帮我看看下面的代码用到了哪些知识点嘛?
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;
public class qb1 {
static Scanner sc=new Scanner(System.in);
static int date;//送餐时间
static int number=0;//餐袋序号
public static void main(String[] args) {
d1 zhuce = new d1();
e11 denlu = new e11();
System.out.println("欢迎来到CL!");
System.out.println("1.注册");
System.out.println("2.登录");
System.out.println("3.退出");
Scanner sc= new Scanner(System.in);
String a = sc.next();
switch(a) {
case"1":zhuce.zhuce();
System.out.println("欢迎来到CL!");
System.out.println("1.注册");
System.out.println("2.登录");
System.out.println("3.退出");
Scanner sr= new Scanner(System.in);
case"2":denlu.denlu();
break;
}
ArrayList<Food> list = new ArrayList<>();
list.add(new Food(1,"榴莲披萨8寸",56));
list.add(new Food(2,"年糕炸鸡",20));
list.add(new Food(3,"杨梅炒苦瓜",16));
ArrayList<FabulousFood> list2 = new ArrayList<>();
list2.add(new FabulousFood(1,"榴莲披萨8寸",56,0,"赞"));
list2.add(new FabulousFood(2,"年糕炸鸡",20,0,"赞"));
list2.add(new FabulousFood(3,"杨梅炒苦瓜",16,0,"赞"));
ArrayList<SeeFood> list1 = new ArrayList<>();
System.out.println(" 欢迎使用“CL”");
System.out.println("******************************");
orderFood(list,list1,list2);
}
public static void orderFood(ArrayList<Food> list1,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3) {//点餐系统界面
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("***********************");
System.out.println("请选择: ");
String num=sc.next();
if (num.equals("1")) {
orderingFood(list1,list2,list3);
}else if (num.equals("2")) {
seeFood(list1,list2,list3);
}else if (num.equals("3")) {
signFor(list1,list2,list3);
}else if (num.equals("4")) {
deletFood(list1,list2,list3);
}else if (num.equals("5")) {
fabulousFood(list1,list2,list3);
}else if (num.equals("6")) {
System.out.println("谢谢使用,欢迎下次光临!");
return;
}else {
System.out.println("输出错误,请重新输入!");
orderFood(list1,list2,list3);
}
}
public static void fabulousFood(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//点赞
System.out.println("******我要点赞******");
System.out.println("序号 菜名 单价");
Iterator<FabulousFood> it = list3.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
System.out.println("请选择您要点赞菜品序号:");
int num= sc.nextInt();
for (int i = 0;i <list.size() ; i++) {
if (num==list.get(i).getNum()) {
list3.get(i).setNumfabulous((list3.get(i).getNumfabulous()+1));
}
}
System.out.println("点赞成功");
System.out.println("输入0返回");
int b=sc.nextInt();
if (b==0) {
orderFood(list,list2,list3);
}
}
public static void deletFood(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){
//删除订单
System.out.println("请输入要删除的订单序号");
int a =sc.nextInt();
for (int i = 0; i <list2.size() ; i++) {
if (a==list2.get(i).getNum()) {
list2.remove(list2.get(i));
}
}
System.out.println("删除订单成功!");
System.out.println("输入0返回");
int b=sc.nextInt();
if (b==0) {
orderFood(list,list2,list3);
}
}
public static void signFor(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//签收订单
System.out.println("请输入要签收的订单序号:");
int sign=sc.nextInt();
for (int i = 0; i <list.size() ; i++) {
if (sign==(list.get(i).getNum())){
list2.get(i).setState("已签收");
}
}
System.out.println("签收订单成功!");
System.out.println("输入0返回");
int a=sc.nextInt();
if (a==0) {
orderFood(list,list2,list3);
}
}
public static void seeFood(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//查看餐带
System.out.println("*******查看餐带******");
System.out.println(" 序号 订餐人 餐品信息 送餐日期 " + " 送餐地址 总金额 订单状态" );
Iterator<SeeFood> it = list2.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
System.out.println("请输入0返回");
int a=sc.nextInt();
if (a==0){
orderFood(list,list2,list3);
}
}
public static void orderingFood(ArrayList<Food> list1,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//)订餐
System.out.println("我要订餐");
System.out.println("请输入订餐人的姓名:");
String name=sc.next();
System.out.println("序号 菜名 单价");
Iterator<Food> it = list1.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
System.out.println("请输入您要点的菜品编号");
int num=sc.nextInt();
System.out.println("请选择您需要的份数");
int num1=sc.nextInt();
foodDelilvery();
int num3=date;//送餐时间
System.out.println("请输入送餐地址");
String address=sc.next();
System.out.println("订餐成功!");
number++;//餐带序号
System.out.print("您订的是:");
String food=list1.get(num-1).getName();//菜品
System.out.println(food+" "+num1+"份");
System.out.println("送餐时间:"+date+"点");
double money=list1.get(num-1).getPrice()*num1;//餐费
System.out.println("餐费:"+money
+"元,送餐费6.0元,总计:"+(money+6)+"元");
//姓名,份数,时间,地址,菜品,餐费
list2.add(new SeeFood(number,name,food,num1,num3,address,(money+6),"已预定"));
System.out.println("输入0返回:");
String input=sc.next();
if (input.equals("0")){
orderFood(list1,list2,list3);
}else {
System.out.println("欢迎下次光临");
}
}
static public void foodDelilvery(){//送餐时间
System.out.println("请输入送餐的时间(送餐时间是10点至20点间整点送餐):");
int num2=sc.nextInt();
date=num2;
if (num2<10||num2>20){
System.out.println("不在送餐时间!");
foodDelilvery();
}
}
}
判断,循环,链表操作
java基础 QAQ