第一节第二部分:面向对象编程案例-电影操作系统

面向对象编程案例

电影操作系统需求分析

1、展示系统中的全部电影(电影名称和对应编号)

2、允许客户根据电影编号查询对应的电影信息

代码运行截图

代码操作系统1
电影操作系统2

电影类:

package com.minaxiangduixiang;
//电影类
public class Movie {
    private int id;
    private String name;

    public Movie() {
    }

    public Movie(int id, String name) {
        this.id = id;
        this.name = name;
    }

    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;
    }
}

电影操作类

package com.minaxiangduixiang;
//电影操作类
public class MovieOperator {
    private Movie[] movies;
    public MovieOperator(Movie[] movies) {
        this.movies = movies;
    }
    //展示全部电影信息movies = {m1,m2,m3...}
    public void printAllMovies(){
        System.out.println("=====全部电影信息=====");
        for (int i = 0; i < movies.length; i++) {
          Movie m = movies[i];
            System.out.println("电影编号: "+m.getId());
            System.out.println("电影名称: "+m.getName());
            System.out.println("==================");
        }
    }
    //根据电影id检索电影信息
    public void searchMovieById(int id){
        System.out.println("=====该电影信息=====");
        for (int i = 0; i < movies.length; i++) {
            Movie m = movies[i];
            if(m.getId() == id) {
                System.out.println("电影编号: " + m.getId());
                System.out.println("电影名称: " + m.getName());
                System.out.println("==================");
                return;//已经找到该电影信息,没有必要继续循环
            }
        }
        System.out.println("未找到该电影信息");

    }
}

操作界面:

package com.minaxiangduixiang;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        //1.设计一个电影类
        //2.设计一个电影的操作类
        //3.准备全部电影数据
        Movie[] movies = new Movie[4];//封装四个电影对象的数组,每个数组元素就是一个Movie对象
        movies[0] = new Movie(1,"飞鸟马时");
        movies[1] = new Movie(2,"枣伊吕波");
        movies[2] = new Movie(3,"龙华妃咲");
        movies[3] = new Movie(4,"尾刃康纳");
       //4.创建一个电影操作类对象,接受电影对象,并对其进行业务处理
        MovieOperator operator = new MovieOperator(movies);
        //将扫描器对象拿到循环体外部,防止每次循环都生成个扫描器
        Scanner sc = new Scanner(System.in);
        while (true) {
            System.out.println("==电影信息系统==");
            System.out.println("1、查看全部电影信息");
            System.out.println("2、根据id查询某个电影的详细信息展示");
            System.out.println("请输入您的指令:");
            int command = sc.nextInt();
            switch (command){
                case 1:
                    //显示全部电影信息
                    operator.printAllMovies();
                    break;
                case 2:
                    //根据id查询电影信息并提示
                    System.out.println("请输入要查询的电脑id:");
                    int id = sc.nextInt();
                    operator.searchMovieById(id);
                    break;
                default:
                    System.out.println("您输入的命令有问题~~~");
                    //选中界面部分代码按ctrl+t将界面置于死循环,已达到输入错误返回系统操作界面功能
            }
        }


    }


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值