首页 > Java > java教程 > 正文

Java编写电影评分管理功能_掌握对象数组操作技巧

P粉602998670
发布: 2025-11-15 16:36:05
原创
550人浏览过
首先设计Movie类封装电影信息与评分数组,再实现添加评分和计算平均分方法,通过对象数组管理多部电影的评分数据。

java编写电影评分管理功能_掌握对象数组操作技巧

在Java中实现电影评分管理功能,是掌握对象数组操作的典型应用场景。通过这个小项目,不仅能加深对类与对象的理解,还能熟练运用数组存储和操作自定义对象,提升逻辑处理能力。

设计电影类(Movie)

首先定义一个Movie类,用于封装电影的基本信息和评分数据。

包含字段如:电影名称、导演、上映年份、评分数组等。使用double数组保存多个用户对该电影的评分,并提供添加评分、计算平均分等方法。

示例代码:

public class Movie {
    private String title;
    private String director;
    private int year;
    private double[] ratings;
    private int ratingCount;

    public Movie(String title, String director, int year, int maxRatings) {
        this.title = title;
        this.director = director;
        this.year = year;
        this.ratings = new double[maxRatings];
        this.ratingCount = 0;
    }

    // 添加评分
    public boolean addRating(double score) {
        if (ratingCount < ratings.length && score >= 0 && score <= 10) {
            ratings[ratingCount++] = score;
            return true;
        }
        return false;
    }

    // 计算平均分
    public double getAverageRating() {
        if (ratingCount == 0) return 0.0;
        double sum = 0;
        for (int i = 0; i < ratingCount; i++) {
            sum += ratings[i];
        }
        return sum / ratingCount;
    }

    // 显示电影信息
    public void displayInfo() {
        System.out.println("电影名: " + title);
        System.out.println("导演: " + director);
        System.out.println("年份: " + year);
        System.out.println("平均评分: " + String.format("%.2f", getAverageRating()));
        System.out.println("评分人数: " + ratingCount);
        System.out.println("---------------------------");
    }
}
登录后复制

使用对象数组管理多部电影

创建Movie对象数组,用来存储多个电影实例。通过循环遍历数组,调用每个对象的方法进行评分录入和信息展示。

立即学习Java免费学习笔记(深入)”;

如此AI写作
如此AI写作

AI驱动的内容营销平台,提供一站式的AI智能写作、管理和分发数字化工具。

如此AI写作 137
查看详情 如此AI写作

注意初始化每个Movie对象,并合理设定最大评分数量,避免数组越界。

示例代码:

public class MovieRatingManager {
    public static void main(String[] args) {
        // 创建可容纳3部电影的对象数组
        Movie[] movies = new Movie[3];
        
        // 初始化电影对象
        movies[0] = new Movie("肖申克的救赎", "弗兰克·德拉邦特", 1994, 100);
        movies[1] = new Movie("霸王别姬", "陈凯歌", 1993, 80);
        movies[2] = new Movie("阿甘正传", "罗伯特·泽米吉斯", 1994, 90);

        // 为电影添加评分
        movies[0].addRating(9.5);
        movies[0].addRating(9.8);
        movies[0].addRating(9.2);

        movies[1].addRating(9.6);
        movies[1].addRating(9.3);

        movies[2].addRating(9.4);
        movies[2].addRating(9.7);
        movies[2].addRating(9.1);
        movies[2].addRating(9.0);

        // 输出所有电影评分信息
        for (Movie movie : movies) {
            movie.displayInfo();
        }
    }
}
登录后复制

关键技巧与注意事项

操作对象数组时,有几个重点需要掌握:

  • 对象数组本身只存储引用,必须通过new关键字逐个实例化每个元素,否则会抛出NullPointerException。
  • 评分数组建议设置上限,模拟真实系统中的容量限制,同时防止内存无限增长。
  • 封装性很重要,评分数组应设为private,通过公共方法访问,确保数据安全。
  • 平均分计算时注意评分数量为0的情况,避免除以零错误。
  • 可扩展方向包括:按评分排序、查找最高分电影、支持用户ID去重评分等。

基本上就这些。通过这个练习,你已经掌握了如何用Java对象数组管理复杂数据,理解了类的设计原则和数组的操作方式。不复杂但容易忽略细节,写代码时多注意边界条件和空指针问题。

以上就是Java编写电影评分管理功能_掌握对象数组操作技巧的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号