Java_面向对象基础-面向对象编程综合案例

模仿电影信息系统

  1. 测试类
package com.badidu.constructordemo;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
//        1.Movie中设计电影类
//        2.MovieOperator中设计电影操作类进行数据业务处理
//        3.准备 全部电影数据
        Movie[] movies = new Movie[4];
        movies[0] = new Movie(1, "水门桥", 38.9, 9.8, "徐克", "吴京", "12万人想看");
        movies[1] = new Movie(2, "水门桥", 38.9, 9.8, "徐克", "吴京", "12万人想看");
        movies[2] = new Movie(3, "水门桥", 38.9, 9.8, "徐克", "吴京", "12万人想看");
        movies[3] = new Movie(4, "水门桥", 38.9, 9.8, "徐克", "吴京", "12万人想看");
//        4.创建一个电影操作类对象,接受电影数据,并对其进行业务处理
        MovieOperator operator = new MovieOperator(movies);
//        operator.printAllMovies();
//        operator.searchMovieById(2);

        while (true) {
            System.out.println("==电影信息系统==");
            System.out.println("1.查询电影信息");
            System.out.println("2.根据id查询某个电影的详细信息展示");
            System.out.println("请输入操作指令:");
            Scanner sc=new Scanner(System.in);
            int command=sc.nextInt();
            switch (command){
                case 1:
                    operator.printAllMovies();
                    break;
                case 2:
                    System.out.println("请输入查询的电影id:");
                    int id=sc.nextInt();
                    operator.searchMovieById(id);
                    break;
                default:
                    System.out.println("您输入的命令有问题");
            }
        }
    }
}

  1. 数据处理类(实体类)
package com.badidu.constructordemo;

public class Movie {
//    1.实体类的成员变量私有
    private int id;
    private String name;
    private double price;
    private double score;
    private String director;
    private String actor;
    private String info;
//    2.创建有参构造器

    public Movie(int id, String name, double price, double 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;
    }
//    3.创建无参构造器

    public Movie() {
    }
//    4.创建getter、setter方法

    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 double getScore() {
        return score;
    }

    public void setScore(double 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;
    }
}

  1. 数据事务处理(操作)
package com.badidu.constructordemo;

public class MovieOperator {
    private Movie[] movies;

    public MovieOperator(Movie[] movies) {
        this.movies = movies;
    }

    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("价格:" + m.getPrice());
            System.out.println("_________________________________________");
        }
    }

    //    2.根据电影的编号查询出该电影的详细信息并展示
    public void searchMovieById(int id) {
        for (int i = 0; i < movies.length; i++) {
            Movie m = movies[i];
            if (m.getId() == id) {
                System.out.println("该电影详情如下:");
                System.out.println("编号:" + m.getId());
                System.out.println("名称:" + m.getName());
                System.out.println("价格:" + m.getPrice());
                System.out.println("得分:" + m.getScore());
                System.out.println("导演:" + m.getActor());
                System.out.println("其他信息" + m.getInfo());
                return;
//                已找到电影信息,没必要执行了
            }
        }
        System.out.println("无该电影");
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值