java电影管理系统
## 实现对数组中元素的增伤改查
beans:
## Admin.java
package com.batis.beans;
public class Admin {
private int id;
private String name;
private String pass;
public Admin() {
super();
}
public Admin(int id, String name, String pass) {
super();
this.id = id;
this.name = name;
this.pass = pass;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
@Override
public String toString() {
return "Admin [id=" + id + ", name=" + name + ", pass=" + pass + "]";
}
}
## Movies.java
package com.batis.beans;
public class Movies {
private String name;
private String actor;
private int time;
public Movies() {
super();
}
public Movies(String name, String actor, int time) {
super();
this.name = name;
this.actor = actor;
this.time = time;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getActor() {
return actor;
}
public void setActor(String actor) {
this.actor = actor;
}
public int getTime() {
return time;
}
public void setTime(int time) {
this.time = time;
}
@Override
public String toString() {
return this.name + "\t" + this.actor + "\t" + time;
}
}
主方法
Test.java
package com.batis.test;
import com.batis.service.Service;
public class Test {
public static void main(String[] args) {
new Service().start();
}
}
业务层
Service.java
package com.batis.service;
import java.util.Scanner;
import com.batis.beans.Admin;
import com.batis.beans.Movies;
public class Service {
private Scanner sc = new Scanner(System.in);
private Admin[] admins = new Admin[10];
private Movies[] movies = new Movies[30];
public void start() {
init();
menu1();
}
public void init() {
admins[0] = new Admin(101,"张三","12345");
admins[1] = new Admin(102,"李四","12345");
movies[0] = new Movies("钢铁侠","唐尼",180);
movies[1] = new Movies("青蜂侠","李小龙",168);
movies[2] = new Movies("煎饼侠","大鹏",155);
}
public void menu1() {
System.out.println("==电影管理系统==");
System.out.println("1:注册");
System.out.println("2:登录");
System.out.println("3:退出程序");
int choose = sc.nextInt();
switch (choose) {
case 1:
register();
break;
case 2:
login();
break;
case 3:
System.out.println("系统已退出");
System.exit(0);
break;
default:
System.out.println("输入有误");
break;
}
menu1();
}
public int getAdminIndex(int id) {
int index = -1;
for(int i = 0; i < admins.length; i++) {
if(admins[i]!=null && admins[i].getId() ==id) {
index = i;
break;
}
}
return index;
}
public void register() {
System.out.println("请输入注册工号");
int id = sc.nextInt();
System.out.println("请输入您的姓名");
String name = sc.next();
System.out.println("请输入您的密码");
String pass = sc.next();
int index = getAdminIndex(id);
if(index >= 0) {
System.out.println("该工号已被注册");
return;
}
for(int i = 1; i < admins.length; i++) {
if(admins[i] == null) {
admins[i] = new Admin(id,name,pass);
System.out.println("添加成功");
return;
}
}
System.out.println("添加失败");
}
public void login() {
System.out.println("请输入您的工号");
int id = sc.nextInt();
int index = getAdminIndex(id);
if(index < 0) {
System.out.println("该工号尚未激活");
return;
}
for(int i = 1; i <= 3; i++) {
System.out.println("请输入您的密码");
String pass = sc.next();
if(admins[index].getPass().equals(pass) ){
System.out.println("登录成功");
menu2(index);
break;
}
if(i == 3) {
System.out.println("登录失败");
System.exit(0);
}else{
System.out.println("密码输入有误,您还有:"+(3-i)+"次机会");
}
}
}
public void menu2(int index) {
System.out.println("==电影管理系统==欢迎"+admins[index].getName());
System.out.println("1:根据片名查找电影");
System.out.println("2:展示所有电影");
System.out.println("3:修改电影时长");
System.out.println("4:新增一部电影");
System.out.println("5:下架一部旧影片");
System.out.println("6:返回上级菜单");
System.out.println("7:退出程序");
int choose = sc.nextInt();
switch (choose) {
case 1:
findMovieByName();
break;
case 2:
showAllMovies();
break;
case 3:
changeMovieTimes();
break;
case 4:
addOneMovie();
break;
case 5:
delOneMovie();
break;
case 6:
menu1();
break;
case 7:
System.out.println("程序已退出");
System.exit(0);
break;
default:
System.out.println("输入有误");
break;
}
menu2(index);
}
public int getMovieIndex(String name) {
int index = -1;
for(int i = 0; i < movies.length; i++) {
if(movies[i]!=null && movies[i].getName().contentEquals(name)) {
index = i;
break;
}
}
return index;
}
public int findMovieByName() {
System.out.println("请输入要查找的影片名称");
String name = sc.next();
int index = getMovieIndex(name);
if(index < 0) {
System.out.println("影片不存在");
return -1;
}
System.out.println("影片名称\t影片主演\t一片时长");
System.out.println(movies[index].toString());
return index;
}
public void showAllMovies() {
System.out.println("影片名称\t影片主演\t影片时长");
for(int i = 0; i < movies.length; i++) {
if(movies[i]!=null) {
System.out.println(movies[i].toString());
}
}
}
public void changeMovieTimes() {
int index = findMovieByName();
if(index < 0) {
System.out.println("影片不存在");
return;
}
System.out.println("请输入修改后时长");
int newTime = sc.nextInt();
movies[index].setTime(newTime);
System.out.println("修改成功");
}
public void addOneMovie() {
System.out.println("请输入新的影片的名称");
String name = sc.next();
System.out.println("请输入该影片的主演");
String actor = sc.next();
System.out.println("请输入该影片的时长");
int time = sc.nextInt();
int index = getMovieIndex(name);
if(index >=0) {
System.out.println("该影片已经存在");
return;
}
for(int i =1; i < movies.length; i++) {
if(movies[i] == null) {
movies[i] =new Movies(name,actor,time);
System.out.println("添加成功");
return;
}
}
System.out.println("添加失败");
}
public void delOneMovie() {
int index = findMovieByName();
if(index < 0) {
System.out.println("该影片不存在");
return;
}
System.out.println("是否确定删除该影片?(y/n)");
String choose = sc.next();
if(choose.equals("n")) {
return;
}
movies[index] = null;
System.out.println("删除成功");
}
}