java电影院选座代码 电影院选座位用java表示
在java中请应用学过的知识,使用面向对象的思想实现影院选座功能,要求打印出座位图
你跟我刚才回答的那个问题是同学吧,我刚贴出来。下次提问之前可以先搜一下
为青岛等地区用户提供了全套网页设计制作服务,及青岛网站建设行业解决方案。主营业务为成都网站设计、网站建设、青岛网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
---------------分割线---下面是代码,纯手打-----------------
//自己没有验证没有测试,可能会有错误,你自己看着改一下
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
HashMapString, ArrayList seat=new HashMap();
int row;
int column;
//创建座位
for(int i=1;i11;i++) {
ArrayList desk=new ArrayList();
for(int ii=0;ii8;ii++) {
desk.add("0");
}
seat.put("第"+i+"排", desk);
}
//开始选座
for(;;) {
System.out.println("========开始选票===========");
//循环输出座位
for(int i=1;iseat.size();i++) {
System.out.print("第"+i+"排"+" ");
for(int ii=0;iseat.get("第"+i+"排").size();) {
System.out.print(seat.get("第"+i+"排").get(ii));
}
}
//开始选座
for(;;) {
System.out.println("选择排数");
row=s.nextInt();
System.out.println("选择第几个,只有0可以选,x是已经被选了");
column=s.nextInt();
if(seat.get("第"+row+"排").get(column).equals("0")) {
seat.get("第"+row+"排").set(column, "X");
System.out.println("选座成功,您的座位是:第"+row+"排,第"+column+"列");
break;
}
}
}
}
如何解释用java写的影院选座的原理,尽可能详细
给你写个简单的例子 并没有对参数做验证 理解下数组的用法够用了
真实的选座比例子复杂的多,包括同步等方面知识
public class Main {
public static void main(String[] args) {
//你描述不够清晰,我就假设 电影院 6排 每排8座
//座位数
int num = 48;
int[] arr = new int[num];
Main obj = new Main();
//调用选座方法
obj.selection(arr,1,1);
//同一个位置调用2次验证一下
obj.selection(arr,1,1);
}
/**
*
* @param arr 座位表
* @param x 排
* @param y 位
*/
public void selection(int[] arr, int x, int y) {
int index = (x - 1) * 6 + y - 1;
if (arr[index] == 0) {
//对应位置的元素设置为1,表示有人
arr[index] = 1;
System.out.println("选座成功:" + "第" + x + "排,第" + y + "座 ");
} else {
System.out.println("第" + x + "排,第" + y + "座 已经被人选啦");
}
}
}
用java写个简单的电影院座位预约,10个座位2行。前面的座位10000文,后面的20000文,
import java.util.Scanner;
/**
*
* @author 12052010
* @Date December 05,2014
*
*/
public class Film {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
int [][] num = new int[2][10];
int fg1,fg2;//标志顾客选择 的座位fg1:排数 fg2:列数
for(int i=0;inum.length;i++){
for(int j=0;jnum[i].length;j++)
num[i][j]=0;//赋初值,所有座位没有被预定
}
randomBook(num);
System.out.print("\n-----------电影院座位订票情况(0:还没被预定 1: 已经被预定)------------");
for(int i=0;inum.length;i++){
System.out.println("");
for(int j=0;jnum[i].length;j++)
System.out.print(" "+num[i][j]);
}
/**
* 顾客输进的排数必须符合0 or 1
*/
do{
System.out.print("\nInput fg1: ");
fg1=input.nextInt();
} while(fg10||fg12);
/**
* 顾客输进的列数必须符合 0-9
*/
do{
System.out.print("Input fg2: ");
fg2=input.nextInt();
} while(fg20||fg29);
if(num[fg1][fg2]==1){
System.out.print("\n已经被人订了,不好意思");
}else{
System.out.print("\n你要订的座位是: "+ fg1+"排 "+ fg2+"列, 票价:");
if(fg1==1)
System.out.print("10000文");
else
System.out.print("20000文");
}
}
/**
* 随即设置电影院的座位被预定
*/
public static void randomBook(int[][] num){
for(int i=0;inum.length;i++){
for(int j=0;jnum[i].length;j++){
//随机设置
num[i][j]=(int)(Math.random()*2);
}
}
}
}
本文名称:java电影院选座代码 电影院选座位用java表示
当前链接:http://scyanting.com/article/dohcjgo.html