程序是為了方便用戶使用的,因此實現圖形化界面的程序編寫是所有編程語言發展的必然趨勢。。。但是由于時間原因,小編并未在代碼中添加可視化圖形界面,有興趣的朋友可自行添加。
演示結果:
下面是具體實現代碼:
1
2
3
4
5
6
|
public class Test { public static void main(String[] args) { BookTicket bookTicket = new BookTicket(); bookTicket.init(); } } |
BookTicket主界面類
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
import java.util.Scanner; public class BookTicket { //主界面類 Movie[] movie = new Movie[ 3 ]; LoginReg loginReg = new LoginReg(); Scanner input = new Scanner(System.in); void movieInformation() // 內部電影信息 { movie[ 0 ] = new Movie(); movie[ 0 ].number = "S1124" ; movie[ 0 ].movieName = "雷神3:諸神黃昏" ; movie[ 0 ].movieTime = "2017-11-03大陸上映" ; movie[ 0 ].moviePrice = 70 ; movie[ 1 ] = new Movie(); movie[ 1 ].number = "S1125" ; movie[ 1 ].movieName = "全球風暴" ; movie[ 1 ].movieTime = "2017-10-27大陸上映" ; movie[ 1 ].moviePrice = 80 ; movie[ 2 ] = new Movie(); movie[ 2 ].number = "S1126" ; movie[ 2 ].movieName = "東方快車謀殺案" ; movie[ 2 ].movieTime = "2017-11-10大陸上映" ; movie[ 2 ].moviePrice = 90 ; } void interFace() // 訂票界面 { System.out.println( "\t\t\t∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞" ); System.out.println( "\t\t\t 訂 票 系 統" ); System.out.println( "\t\t\t∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞" ); System.out .println( "------------------------------------------------------------------------------" ); System.out.println( "電影編號\t\t電影名\t\t上映時間\t\t電影票價" ); System.out.println(movie[ 0 ].number + "\t\t" + movie[ 0 ].movieName + "\t\t" + movie[ 0 ].movieTime + "\t" + "$" + movie[ 0 ].moviePrice); System.out.println(movie[ 1 ].number + "\t\t" + movie[ 1 ].movieName + "\t\t" + movie[ 1 ].movieTime + "\t" + "$" + movie[ 1 ].moviePrice); System.out.println(movie[ 2 ].number + "\t\t" + movie[ 2 ].movieName + "\t\t" + movie[ 2 ].movieTime + "\t" + "$" + movie[ 2 ].moviePrice); System.out .println( "------------------------------------------------------------------------------" ); } void login() // 登陸、注冊 { System.out.println( "1.登陸\t\t2.注冊" ); Scanner input = new Scanner(System.in); int logReg = input.nextint(); switch (logReg) { case 1 : if (loginReg.login() == 0 ) login(); break ; case 2 : loginReg.reg(); login(); break ; default : System.out.println( "輸入錯誤" ); login(); } } void booking() // 訂票 { Boolean con = true ; int index = 0 ; int [] flag = { - 1 , - 1 , - 1 }; do { System.out.println( "\t\t歡迎訂票" ); System.out.println( "請輸入電影編號(注意字母大寫)" ); String odd = input.next(); for ( int i = 0 ; i < movie.length; i++) { if (movie[i].number.equals(odd)) { flag[index] = i; break ; } } if (flag[index] == - 1 ) { System.out.println( "\t\t編號輸入錯誤(找不到您要的電影)" ); } else { System.out.println( "\t\t訂票成功" ); System.out.println( "電影編號\t電影名\t\t上映時間\t\t電影票價" ); System.out.println(movie[flag[index]].number + "\t\t" + movie[flag[index]].movieName + "\t" + movie[flag[index]].movieTime + "\t\t" + "$" + movie[flag[index]].moviePrice); index++; } System.out.println( "是否需要繼續訂票(Y/N)" ); String yesNo = input.next(); if (yesNo.equals( "N" )) con = false ; if (index >= 3 ) { System.out.println( "已經沒有可預訂的票" ); con = false ; } } while (con); int add = 0 ; int sign = 0 ; for (index = 0 ; index < 3 ; index++) { if (flag[index] != - 1 ) { add += movie[flag[index]].moviePrice; sign++; } } System.out.println( "你一共訂了" + sign + "張票" + "一共¥" + add + "元" ); } void init() { movieInformation(); // 電影信息錄入 interFace(); // 界面 login(); // 用戶登陸、注冊 booking(); // 訂票 } } |
登陸,注冊類
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
|
import java.util.Scanner; public class LoginReg { //登陸,注冊類 final int INIT = 1024 ; User[] user = new User[INIT]; Scanner input = new Scanner(System.in); void reg() //用戶注冊 { int flag = 0 ; System.out.println( "\t歡 迎 注 冊" ); System.out.println( "用戶名" ); for ( int i = 0 ;i < INIT;i++) { if (user[i]== null ) { user[i] = new User(); user[i].name = input.next(); flag = i; break ; } } System.out.println( "密碼" ); user[flag].password = input.next(); System.out.println( "\t恭 喜 您!注 冊 成 功" ); } int login() //用戶登陸 { int flag = 0 ; System.out.println( "\t歡 迎 登 陸" ); System.out.println( "用戶名" ); String n1 = input.next(); System.out.println( "密碼" ); String n2 = input.next(); for ( int i = 0 ;i < INIT;i++) { if (user[i]!= null ) { if (user[i].name.equals(n1) && user[i].password.equals(n2)) { flag = 1 ; break ; } } } switch (flag) { case 0 : System.out.println( "登陸失敗" ); System.out.println( "是否重新登錄(Y/N)" ); String instr = input.next(); if (instr.equals( "Y" )) login(); break ; case 1 : System.out.println( "登陸成功" ); break ; } return flag; } } |
用戶類
1
2
3
4
|
public class User { //用戶類 String name; // 用戶名 String password; //密碼 } |
電影類
1
2
3
4
5
6
|
public class Movie { //電影類 String number; String movieName; String movieTime; int moviePrice; } |
結束。
以上就是本文關于Java實現電影院訂票系統代碼的全部內容,希望對大家有所幫助。如有不足之處,歡迎留言指出。
原文鏈接:http://www.cnblogs.com/xh0102/p/5693265.html