static void Main(string[] args) { IMenuComponent pancakeHouseMenu = new Menu("팬케이크 하우스 메뉴", "아침 메뉴"); IMenuComponent dinerMenu = new Menu("객체마을 식당 메뉴", "점심 메뉴"); IMenuComponent cafeMenu = new Menu("카페 메뉴", "저녁 메뉴"); IMenuComponent desertMenu = new Menu("디저트 메뉴", "디저트를 즐겨 보세요"); IMenuComponent allMenus = new Menu("전체 메뉴", "전체 메뉴"); allMenus.Add(pancakeHouseMenu); allMenus.Add(dinerMenu); allMenus.Add(cafeMenu); //아침 메뉴 추가 pancakeHouseMenu.Add(new MenuItem("K&B 팬케이크 세트", "스크램블드 에그와 토스트가 곁들어진 팬테이크", true, 2.99)); pancakeHouseMenu.Add(new MenuItem("레귤러 팬케이크 세트", "달걀 후라이와 소시지가 곁들여진 팬케이크", false, 2.99)); pancakeHouseMenu.Add(new MenuItem("블루베리 팬케이크", "신선한 블루베리와 블루베리 시럽으로 만든 팬케이크", true, 3.94)); pancakeHouseMenu.Add(new MenuItem("와플", "와플, 취향에 따라 블루베리나 딸기를 얹을 수 있습니다.", true, 3.95)); //점심 메뉴 추가 dinerMenu.Add(new MenuItem("채식주의자용 BLT", "통밀 위에(식물성)베이컨, 상추, 토마토를 얹은 메뉴", true, 2.99)); dinerMenu.Add(new MenuItem("BLT", "통밀 위에 베이컨, 상추, 토마토를 얹은 메뉴", false, 2.99)); dinerMenu.Add(new MenuItem("오늘의 스프", "감자 샐러드를 곁들인 오늘의 스프", false, 3.29)); dinerMenu.Add(new MenuItem("핫도그", "샤워크라우트, 갖은 양념, 양파, 치즈가 곁들여진 핫도그", false, 3.05)); dinerMenu.Add(new MenuItem("찐 채소와 브라운 라이스", "찐 채소와 브라운 라이스의 절묘한 조화", true, 3.99)); dinerMenu.Add(new MenuItem("파스타", "마리나라 소스 스파게티. 효모빵도 드립니다.", true, 3.89)); dinerMenu.Add(desertMenu); //점심 메뉴 -> 디저트 메뉴 추가 desertMenu.Add(new MenuItem("애플 파이", "바삭바삭한 크러스트에 바닐라 아이스크립이 얹혀 있는 애플 파이", true, 1.59)); desertMenu.Add(new MenuItem("치즈케이크", "초콜릿 그레이엄 크러스트 위에 부드러운 뉴욕 치즈케이크", true, 1.99)); desertMenu.Add(new MenuItem("소르베", "라스베리와 라임의 절묘한 조화", true, 1.89)); //점심 메뉴 -> 디저트 메뉴 -> 스페셜 메뉴 추가 IMenuComponent specialMenu = new Menu("스페셜 메뉴", "디저트 스페셜 메뉴"); specialMenu.Add(new MenuItem("스페셜 애플 파이", "스페셜 바삭바삭한 크러스트에 바닐라 아이스크림이 얹혀 있는 애플 파이", true, 2.59)); specialMenu.Add(new MenuItem("스페셜 치즈케이크", "스페셜 초콜릿 그레이엄 크러스트 위에 부드러운 뉴욕 치즈케이크", true, 2.99)); specialMenu.Add(new MenuItem("스페셜 소르베", "스페셜 라스베리와 라임의 절묘한 조화", true, 2.89)); desertMenu.Add(specialMenu); //저녁 메뉴 추가 cafeMenu.Add(new MenuItem("베지 버거와 에어 프라이", "통밀빵, 상추, 토마토, 감자튀김이 첨가된 베지 버거", true, 3.99)); cafeMenu.Add(new MenuItem("오늘의 스프", "샐러드가 곁들여진 오늘의 스프", false, 3.69)); cafeMenu.Add(new MenuItem("베리또", "통 핀토콩과 살사, 구아카몰이 곁들여진 푸짐한 베리또", true, 4.29)); Waitress waitress = new Waitress(allMenus); //waitress.PrintMenu(); Console.WriteLine("\n******************************************************************\n"); waitress.PrintVegetarianMenu(); }
public static void Main(string[] args) { MenuComponent pancakeHouseMenu = new Menu("PANCAKE HOUSE MENU", "Breakfast"); MenuComponent dinerMenu = new Menu("DINER MENU", "Lunch"); MenuComponent cafeMenu = new Menu("CAFE MENU", "Dinner"); MenuComponent dessertMenu = new Menu("DESSERT MENU", "Dessert of course!"); MenuComponent allMenus = new Menu("ALL MENUS", "All menus combined"); allMenus.Add(pancakeHouseMenu); allMenus.Add(dinerMenu); allMenus.Add(cafeMenu); pancakeHouseMenu.Add(new MenuItem("K&B's Pancake Breakfast", "Pancakes with scrambled eggs, and toast", true, 2.99m)); pancakeHouseMenu.Add(new MenuItem("Regular Pancake Breakfast", "Pancakes with fried eggs, sausage", false, 2.99m)); pancakeHouseMenu.Add(new MenuItem("Blueberry Pancakes", "Pancakes made with fresh blueberries, and blueberry syrup", true, 3.49m)); pancakeHouseMenu.Add(new MenuItem("Waffles", "Waffles, with your choice of blueberries or strawberries", true, 3.59m)); dinerMenu.Add(new MenuItem("Vegetarian BLT", "(Fakin') Bacon with lettuce & tomato on whole wheat", true, 2.99m)); dinerMenu.Add(new MenuItem("BLT", "Bacon with lettuce & tomato on whole wheat", false, 2.99m)); dinerMenu.Add(new MenuItem("Soup of the day", "A bowl of the soup of the day, with a side of potato salad", false, 3.29m)); dinerMenu.Add(new MenuItem("Hotdog", "A hot dog, with sauerkraut, relish, onions, topped with cheese", false, 3.05m)); dinerMenu.Add(new MenuItem("Steamed Veggies and Brown Rice", "A medly of steamed vegetables over brown rice", true, 3.99m)); dinerMenu.Add(new MenuItem("Pasta", "Spaghetti with Marinara Sauce, and a slice of sourdough bread", true, 3.89m)); dinerMenu.Add(dessertMenu); dessertMenu.Add(new MenuItem("Apple Pie", "Apple pie with a flakey crust, topped with vanilla icecream", true, 1.59m)); dessertMenu.Add(new MenuItem("Cheesecake", "Creamy New York cheesecake, with a chocolate graham crust", true, 1.99m)); dessertMenu.Add(new MenuItem("Sorbet", "A scoop of raspberry and a scoop of lime", true, 1.89m)); cafeMenu.Add(new MenuItem("Veggie Burger and Air Fries", "Veggie burger on a whole wheat bun, lettuce, tomato, and fries", true, 3.99m)); cafeMenu.Add(new MenuItem("Soup of the day", "A cup of the soup of the day, with a side salad", false, 3.69m)); cafeMenu.Add(new MenuItem("Burrito", "A large burrito, with whole pinto beans, salsa, guacamole", true, 4.29m)); Waitress waitress = new Waitress(allMenus); waitress.PrintVegetarianMenu(); Console.ReadKey(); }
//这个遍历算法是错的,遍历的顺序错了 static void Main(string[] args) { MenuComponent pancakeHouseMenu = new Menu("Pancake House Menu", "Breakfast"); MenuComponent dinerMenu = new Menu("Diner Menu", "Lunch"); MenuComponent cafeMenu = new Menu("Cafe Menu", "Dinner"); MenuComponent dessertMenu = new Menu("Dessert Menu", "Dessert of course!"); MenuComponent allMenus = new Menu("All Menus", "All menus combined"); allMenus.Add(pancakeHouseMenu); allMenus.Add(dinerMenu); allMenus.Add(cafeMenu); #region 添加dinerMenu里的内容,条目 dinerMenu.Add(new MenuItem("Vegetarian BLT", "(Fakin') Bacon with lettuce & tomato on whole wheat", true, 2.99)); dinerMenu.Add(new MenuItem("BLT", "Bacon with lettuce & tomato on whole wheat", false, 2.99)); dinerMenu.Add(new MenuItem("Soup of the day", "Soup of the day, with a side of potato salad", false, 2.99)); dinerMenu.Add(new MenuItem("Hotdog", "A hot dog, withe saurkraut, relish, onions, topped with cheese", false, 3.05)); dinerMenu.Add(dessertMenu); #endregion #region 添加dessertMenu里的内容,条目 dessertMenu.Add(new MenuItem("Apple Pie", "Apple pie with a flakey crust, topped with vanilla ice cream", true, 1.59)); dessertMenu.Add(new MenuItem("Cheesecake", "Creamy New York chessecake, with a chocolate graham crust", true, 1.99)); dessertMenu.Add(new MenuItem("Sorbet", "A scoop of raspberry and a scoop of lime", true, 1.89)); #endregion #region 添加pancakeHouseMenu里的内容,条目 pancakeHouseMenu.Add(new MenuItem("K&B's Pancake Breakfast", "Pancakes with scrambled eggs, and toast", true, 2.99)); pancakeHouseMenu.Add(new MenuItem("Regular Pancake Breakfast", "Pancakes with fried eggs, sausage", false, 2.99)); pancakeHouseMenu.Add(new MenuItem("Blueberry Pancakes", "Pancakes made with fresh blueberries", true, 3.49)); pancakeHouseMenu.Add(new MenuItem("Waffles", "Waffles, with your choice of blueberries or strawberries", true, 3.59)); #endregion #region 添加cafeMenu里的内容,条目 cafeMenu.Add(new MenuItem("Veggie Burger and Air Fries", "Veggie burger on a whole wheat bun, lettuce, tomato, and fries", true, 3.99)); cafeMenu.Add(new MenuItem("Soup of the day", "A cup of the soup of the day, with a side salad", false, 3.69)); cafeMenu.Add(new MenuItem("Burrito", "A large burrito, with whole pinto beans, salsa, guacamole", true, 4.29)); #endregion Waitress waitress = new Waitress(allMenus); //waitress.PrintMenu(); waitress.PrintVegetarianMenu(); Console.ReadKey(); }