J010_面向对象基础案例-模仿电影信息系统

一、需求描述

1、展示系统中的全部电影(每部电影展示:名称、价格)。

2、允许用户根据电影编号(id)查询出每个电影的详细信息。

二、开发设计

1、需要一个电影实体类

2、设计一个电影操作类用来实现业务需求

3、测试程序

三、代码实现

3.1 Moive.java

package com.itheima.demo;

public class Moive {
    //电影ID
    private int id;

    //电影名称
    private String name;

    //电影价格
    private double price;

    //电影评分
    private String score;

    //电影导演
    private String director;

    //电影主演
    private String actor;

    //其他信息
    private String info;

    //无参构造器
    public Moive() {
    }

    //有参数构造器
    public Moive(int id, String name, double price, String score, String director, String actor, String info) {
        this.id = id;
        this.name = name;
        this.price = price;
        this.score = score;
        this.director = director;
        this.actor = actor;
        this.info = info;
    }

    //提供get/set方法
    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 double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public String getScore() {
        return score;
    }

    public void setScore(String score) {
        this.score = score;
    }

    public String getDirector() {
        return director;
    }

    public void setDirector(String director) {
        this.director = director;
    }

    public String getActor() {
        return actor;
    }

    public void setActor(String actor) {
        this.actor = actor;
    }

    public String getInfo() {
        return info;
    }

    public void setInfo(String info) {
        this.info = info;
    }
}

3.2 MoiveOperator.java

package com.itheima.demo;

public class MovieOperator {
    private Moive[] moives;

    public MovieOperator(Moive[] moives) {
        this.moives = moives;
    }

    //展示系统全部电影信息
    public void printAllMovies(){
        for (int i = 0; i < moives.length; i++) {
            System.out.println("第" + (i+1) + "部电影信息如下:");
            System.out.println("ID:" + moives[i].getId());
            System.out.println("电影名称:" + moives[i].getName());
            System.out.println("电影评分:" + moives[i].getScore());
            System.out.println("--------------------------");
        }
    }

    //根据ID检索电影信息
    public void getMovieById(int id){
        for (int i = 0; i < moives.length; i++) {
            if (moives[i].getId() == id){
                System.out.println("您要搜索的电影信息如下:");
                System.out.println("电影ID:" + moives[i].getId());
                System.out.println("电影名称:" + moives[i].getName());
                System.out.println("电影价格:" + moives[i].getPrice());
                System.out.println("电影评分:" + moives[i].getScore());
                System.out.println("电影导演:" + moives[i].getDirector());
                System.out.println("电影主演:" + moives[i].getActor());
                System.out.println("其他信息:" + moives[i].getInfo());
                return;
            }
        }
        System.out.println("您要搜索的电影不存在!");
    }
}

3.3 Test.java

package com.itheima.demo;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        //创建一个存储电影的数组
        Moive[] moives = new Moive[4];

        //为每部电影创建实例对象
        moives[0] = new Moive(1,"热辣滚烫",49.9,"4.9","李平","贾玲、张小斐","电影不错!!");
        moives[1] = new Moive(2,"飞驰人生2",39.9,"4.8","李平2","沈腾、范丞丞","嘿嘿!!");
        moives[2] = new Moive(3,"第二十条",50,"4.6","李平3","赵丽颖","哈哈哈!!");
        moives[3] = new Moive(4,"一闪一闪亮晶晶",59.9,"4.5","李平4","张万森","嘻嘻!!");

        //创建一个电影操作实例
        MovieOperator mo = new MovieOperator(moives);
        //mo.printAllMovies();
        //mo.getMovieById(3);

        Scanner sc = new Scanner(System.in);

        while (true) {
            //模拟电影信息系统
            System.out.println("****电影信息系统****");
            System.out.println("1:查询全部电影信息");
            System.out.println("2:根据ID搜索电影详细信息");

            int command = sc.nextInt();

            switch (command){
                case 1:
                    mo.printAllMovies();
                    break;
                case 2:
                    System.out.println("请输入你想搜索的电影ID:");
                    int id = sc.nextInt();
                    mo.getMovieById(id);
                    break;
                default:
                    System.out.println("您输入的命令有问题,请重新输入");
            }
        }
    }

}

3.4 运行结果

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值