首页 > 编程语言 >Java学习笔记02-电影信息展示综合案例

Java学习笔记02-电影信息展示综合案例

时间:2024-12-31 10:29:22浏览次数:3  
标签:02 Java String Movie 电影 笔记 public movies id

需求:展示电影的全部信息,包括id、 名称、价格、主演。要求展示出全部信息,并且用户可以根据电影id号查询某个电影的详细息

实施步骤:

1、设计电影类Movie,以便创建电影对象,封装电影数据

package org.example.Demo;
//实体类
public class Movie {
    private int id;
    private String name;
    private double price;
    private String actor;

    public Movie() {
    }
    //有参构造器
    public Movie(int id, String name, double price, String actor) {
        this.id = id;
        this.name = name;
        this.price = price;
        this.actor = actor;
    }
    //为每一个成员变量构建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 getActor() {
        return actor;
    }

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

2、封装系统中的全部电影数据,以便拿到电影数据以供查询展示

package org.example.Demo;

public class Test {
    public static void main(String[] args) {
        //展示系统中的全部电影信息(id、名称、价格、主演)
        //展示全部信息,并允许用户根据电影编号(id)查询出某个电影的详细信息
        //1、设计电影类Movie,以便创建电影对象,封装电影数据
        //2、封装系统中的全部电影数据,以便拿到电影数据以供查询展示
        Movie[] movies = new Movie[6];//类本身就是类型
        //movies = [null,null,null,null,null,null]
        //           0    1    2    3    4    5
        movies[0] = new Movie(1,"《肖申克的救赎》",9.6,"蒂姆·罗宾斯");
        movies[1] = new Movie(2,"《霸王别姬》",9.5,"张国荣");
        movies[2] = new Movie(3,"《阿甘正传》",9.4,"汤姆·汉克斯");
        movies[3] = new Movie(4,"《星际穿越》",9.5,"安妮·海瑟薇");
        movies[4] = new Movie(5,"《公主日记》",9.4,"安妮·海瑟薇");
        movies[5] = new Movie(6,"《泰坦尼克号》",9.4,"莱昂纳多·德卡普里奥");

        //3、创建电影操作对象,专门负责电影数据的业务操作
        MovieOperator movieOperator = new MovieOperator(movies);
        movieOperator.showAll();
        movieOperator.searchById();
    }
}

 Movie类有电影的各种详细信息,类也是类型,因此创建Movie类的对象。而要展示电影和根据电影id号查询某个电影的详细信息,要将6个电影对象都封装在一起,因此用数组来存储6个电影对象。

3、创建电影操作对象,专门负责电影数据的业务操作

package org.example.Demo;

import java.util.Scanner;

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

    public void showAll() {
        System.out.println("-----全部电影信息如下-----");
        for (int i = 0; i < movies.length; i++) {
            System.out.println(movies[i].getId()+movies[i].getName()+movies[i].getPrice()+movies[i].getActor());
        }
    }

    public void searchById() {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要查询的电影编号:");
        int id = sc.nextInt();
        for (int i = 0; i < movies.length; i++) {
            //判断当前电影对象的id是否是我们输入的正在找的id,是则打印出该电影信息并立即结束方法
            if (movies[i].getId() == id) {
                System.out.println(movies[i].getId()+movies[i].getName()+movies[i].getPrice()+movies[i].getActor());
                return;
            }
        }
        //若循环结束仍未找到与正在找的id相等的id,则没有这个电影信息
        System.out.println("没有找到该电影");
    }
}

那么,电影类对象数组movies如何进入到电影操作类中进行电影数据的业务处理呢?下图展现了主类中电影类对象数组movies是怎么被Movieoperator类里的movies接收的:

执行结果:

 

标签:02,Java,String,Movie,电影,笔记,public,movies,id
From: https://blog.csdn.net/ddshs/article/details/144842275

相关文章