资源简介
java 实现电影院售票系统 swing实现 能使你更好的理解swing的布局 事件...
代码片段和文件信息
package com.xun.cinema.console;
import java.awt.Color;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import com.xun.cinema.model.Cinema;
import com.xun.cinema.model.ScheduleItem;
import com.xun.cinema.model.Seat;
import com.xun.cinema.model.Ticket;
import com.xun.cinema.model.TicketFactory;
/**
* console版本测试
* @author Administrator
*
*/
public class MyCinemaApp {
static Cinema cinema = new Cinema();
static Scanner sc = new Scanner(System.in);
public static void main(String[] args) throws NumberFormatException IOException {
try {
cinema.load();
showScheduleItem();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
/*
* 开始主菜单
*/
private static void showScheduleItem() throws NumberFormatException IOException {
//拿到所有的电影的东西
//key--->time
//value-->scheduleItem
Map items = cinema.getSchedule().getItems();
System.out.println(“--------------今日上映--------------“);
//打印出movie.txt里面的电影
String names = ““;
for(String s : items.keySet()) {
String movieName = items.get(s).getMovie().getMovieName();
if(names.contains(movieName)) {
continue;
}
names += movieName;
String time = items.get(s).getTime();
for(String s1 : items.keySet()) {
if(movieName.equals(items.get(s1).getMovie().getMovieName()) && !s1.equals(s)) {
time += “\n\t“ + items.get(s1).getTime();
}
}
System.out.println(movieName);
System.out.println(“\t“+time);
}
System.out.println(“请选择需要查看的电影输入上映时间:“);
String time = sc.next();
if(!items.containsKey(time)) {
System.out.println(“没有您这个时间段的电影场次!“);
} else {
//显示电影信息确定了我们要看的哪部电影
ScheduleItem item = items.get(time);
//显示出这个场次的电影座位情况根据这个time我们就能唯一的确定一部电影
showSeat(time);
System.out.println(“\n请选择座位:“);
String seatNum = sc.next();
if(!cinema.getSeats().containsKey(seatNum)) {
System.out.println(“没有此座位!“);
} else {
//座位选好了准备出票
Seat seat = cinema.getSeats().get(seatNum); //从创建好的座位中拿到这个座位
Ticket t =chooseTicket(item seat);//根据item和seat来创建票
seat.setColor(Color.red);
//将票添加到ciname
cinema.getSoldTicket().add(t);
System.out.println(“购买成功!“);
//打印
t.print();
//序列化
cinema.save();
}
}
}
private static Ticket chooseTicket(ScheduleItem item Seat seat) {
System.out.println(“1:普通票 2:学生票 3:赠票“);
int num = sc.nextInt();
int discount = 0;
String customerName = ““;
if(2 == num) {
System.out.println(“请输入折扣:“);
discount = sc.nextInt();
} else if(3 == num) {
System.out.println(“请输入赠票人名字:“);
customerName = sc.next();
}
Ticket t = TicketFactory.createTicket(item seat discount customerName num);
return t;
}
/*
* 显示出对应time场次的座位情况
*/
private static void showSeat(String time) {
//先创建座位
createSeat();
System.out.pri
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-11-27 16:03 CinemaSys\
文件 301 2012-08-22 20:26 CinemaSys\.classpath
文件 385 2012-08-22 20:26 CinemaSys\.project
目录 0 2012-11-27 16:03 CinemaSys\.settings\
文件 629 2012-08-22 20:26 CinemaSys\.settings\org.eclipse.jdt.core.prefs
目录 0 2012-11-27 16:03 CinemaSys\bin\
目录 0 2012-11-27 16:03 CinemaSys\bin\com\
目录 0 2012-11-27 16:03 CinemaSys\bin\com\xun\
目录 0 2012-11-27 16:03 CinemaSys\bin\com\xun\cinema\
目录 0 2012-11-27 16:03 CinemaSys\bin\com\xun\cinema\console\
文件 5604 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\console\MyCinemaApp.class
目录 0 2012-11-27 16:03 CinemaSys\bin\com\xun\cinema\model\
文件 3148 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\Cinema.class
文件 2510 2012-08-29 14:19 CinemaSys\bin\com\xun\cinema\model\FreeTicket.class
文件 160 2012-08-29 13:58 CinemaSys\bin\com\xun\cinema\model\IPrintable.class
文件 3528 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\Movie.class
文件 1241 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\MovieType.class
文件 3281 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\Schedule.class
文件 2075 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\ScheduleItem.class
文件 1275 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\Seat.class
文件 3657 2012-08-29 14:20 CinemaSys\bin\com\xun\cinema\model\StudentTicket.class
文件 3874 2012-08-29 14:17 CinemaSys\bin\com\xun\cinema\model\Ticket.class
文件 1235 2012-08-29 13:48 CinemaSys\bin\com\xun\cinema\model\TicketFactory.class
目录 0 2012-11-27 16:03 CinemaSys\bin\com\xun\cinema\view\
文件 793 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$1.class
文件 2426 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$2.class
文件 2299 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$3.class
文件 896 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$4.class
文件 1689 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$5.class
文件 1864 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$MyJLabel.class
文件 2770 2012-08-29 14:00 CinemaSys\bin\com\xun\cinema\view\CinemaView$MyJRadioButtonMonitor.class
............此处省略39个文件信息
- 上一篇:SVM 算法 java 实现
- 下一篇:即时通信系统Java实现
相关资源
- 即时通信系统Java实现
- SVM 算法 java 实现
- Java 编程规范CheckList
- Java UDP打洞技术,UDP 穿透NAT,P2P打洞
- JAVA校园导航系统
- java 文件 加密 解密
- Java操作Redis,实现String、List、Map的
- 用JAVA编写的备忘录
- 成组链接法Java版
- JavaWeb增删改查
- mysql-connector-java-5.1.36-bin.zip
- 解决SAT问题的JAVA代码
- 简单函数绘图语言java
- rxtxParallel+rxtxSerial32位和64位
- 生产者和消费者的javaGUI
- 期刊投稿系统java
- 郭永峰Java全套资料百度网盘20180627更
- 操作系统页面置换算法-java界面化实现
- 基于JAVA的简易银行系统
- Java实现自动售货机程序
- java写的物流管理系统+源码
- 仓库管理系统,Spring+SpringMVC+Mybatis
- JAVA复习题及答案
- RSA加解密算法java源代码
- java多线程综合实验2020年1月武汉理工
- 基于安全的即时通信系统设计.zip
- (JAVA+MySQL)课程设计 学生选课管理系
- 推箱子源码及素材Java实现
- JAVA课程大作业
- 三角形问题JAVA.rar.rar
评论
共有 条评论