-
Notifications
You must be signed in to change notification settings - Fork 273
Expand file tree
/
Copy pathMainMenu.java
More file actions
67 lines (57 loc) · 1.98 KB
/
Copy pathMainMenu.java
File metadata and controls
67 lines (57 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package subway.menu;
import subway.util.DefaultSetting;
import java.util.Scanner;
public class MainMenu {
private static final String MAIN_TITLE = "## 메인 화면";
private static final String MENU1 = "1. 역 관리";
private static final String MENU2 = "2. 노선 관리";
private static final String MENU3 = "3. 구간 관리";
private static final String MENU4 = "4. 지하철 노선도 출력";
private static final String QUIT = "Q. 종료";
private static final String CHOICE_MESSAGE = "## 원하는 기능을 선택하세요.";
private Scanner scanner;
public MainMenu(Scanner scanner) {
this.scanner = scanner;
}
//TODO 메뉴번호 이외의 입력을 받았을 때 예외사항 출력 구현해야함
public void start() {
new DefaultSetting().defaultSetting();
selectMainMenu();
}
private void selectMainMenu() {
while (true) {
printMainMenu();
String input = scanner.nextLine();
System.out.println();
mainMenu(input);
if (input.equals("Q")) {
break;
}
}
}
private void mainMenu(String input) {
if (input.equals("1")) {
new StationMenu(scanner).startStationMenu();
}
if (input.equals("2")) {
new LineMenu(scanner).startLineMenu();
}
if (input.equals("3")) {
new SectionMenu(scanner).startSectionMenu();
}
if (input.equals("4")) {
new SubwayMapMenu().printSubwayMap();
}
}
private void printMainMenu() {
StringBuilder sb = new StringBuilder();
sb.append(MAIN_TITLE).append("\n")
.append(MENU1).append("\n")
.append(MENU2).append("\n")
.append(MENU3).append("\n")
.append(MENU4).append("\n")
.append(QUIT).append("\n\n")
.append(CHOICE_MESSAGE);
System.out.println(sb);
}
}