集合框架综合小案例

发布时间:2026-01-13 18:14

2301_78066986

2026-01-10 08:31:35点赞:0阅读:1

关注

集合框架综合小案例

package com.itheima.test8; public class Test { public static void main(String[] args) { //目标:完成电影案例 //1、创建电影对象,定义电影类 //2、创建一个电影操作对象,专门负责对电影数据进行业务处理(上架,下架,查询,封杀某个电影明星的电影) MovieService service = new MovieService();//创建电影操作对象 service.start(); } }

package com.itheima.test8; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @AllArgsConstructor @NoArgsConstructor public class Movie { private String name; private double score; private String actor; private double price; }

package com.itheima.test8; import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class MovieService { //4、准备集合容器,存储全部上架的电影 private static List<Movie> movies = new ArrayList<>(); private static Scanner sc = new Scanner(System.in); public void start() { //3、准备操作界面(cmd命令做) while (true) { System.out.println("========电影信息操作系统========"); System.out.println("1. 上架电影"); System.out.println("2. 下架电影"); System.out.println("3. 查询电影"); System.out.println("4. 封杀电影明星"); System.out.println("5. 退出系统"); System.out.println("6. 展示全部电影"); System.out.println("7. 修改某个电影"); System.out.println("请您输入操作命令:"); String command = sc.next(); switch (command) { case "1": //上架(独立功能独立成方法) addMovie(); break; case "2": //下架 //deleteMovie(); break; case "3": queryMovie(); //查询 break; case "4": //封杀 deleteStar(); break; case "5": //退出 System.out.println("感谢使用!"); return; case "6": //展示全部电影 showAllMovies(); break; case "7": //修改某个电影 //updateMovie(); break; default: System.out.println("输入命令有误,请重新输入!"); } } } // private void updateMovie() { // System.out.println("=========修改电影========="); // System.out.println("请输入要修改的电影名称:"); // String name = sc.next(); // for (int i = 0; i < movies.size(); i++) { // Movie movie1 = movies.get(i); // if (movie1.getName().equals(name)) { // System.out.println("请输入新的电影名称:"); // movie1.setName(sc.next()); // System.out.println("请输入新的电影评分:"); // movie1.setScore(sc.nextDouble()); // System.out.println("请输入新的主演:"); // movie1.setActor(sc.next()); // System.out.println("请输入新的电影价格:"); // movie1.setPrice(sc.nextDouble()); // System.out.println("修改成功!"); // return; // } // } // } // private void deleteMovie() { // System.out.println("=========下架电影========="); // System.out.println("请输入要下架的电影名称:"); // String name = sc.next(); // for (int i = 0; i < movies.size(); i++) { // Movie movie = movies.get(i); // if (movie.getName().equals(name)) { // movies.remove(movie); // } // } // } private void showAllMovies() { System.out.println("=========展示全部电影========="); for (Movie movie : movies) { System.out.println(movie.getName()+" "+movie.getScore()+" "+movie.getActor()+" "+movie.getPrice() ); } } //封杀电影明星 private void deleteStar() { System.out.println("=========封杀电影明星========="); System.out.println("请输入要封杀的明星:"); String star = sc.next(); for (int i = 0; i < movies.size(); i++) { Movie movie = movies.get(i); if (movie.getActor().contains(star)) { movies.remove(movie); i--;//退一步 } } System.out.println("封杀成功!"); queryMovie(); } /** * 查询电影 */ private void queryMovie() { //System.out.println("=========查询电影========="); System.out.println("请输入电影名称:"); String name = sc.next(); //根据电影名称查询电影对象返回 Movie movie = queryMovieByName(name); if (movie != null) { System.out.println(movie.getName()+" "+movie.getScore()+" "+movie.getActor()+" "+movie.getPrice() ); } else { System.out.println("未找到该电影!"); } } //根据电影名称查询电影对象返回(集合的增强for循环) public Movie queryMovieByName(String name) { for (Movie m : movies)// { if (m.getName().equals(name)) { return m;// 找到并返回 } } return null;//未找到 } /** * 上架电影 */ private void addMovie() { System.out.println("=========上架电影========="); //分析:每点击一次上架电影,其实就是新增一部电影 //1、创建电影对象,封装这部电影信息 Movie movie = new Movie(); //2、给电影对象注入数据 System.out.println("请输入电影名称:"); movie.setName(sc.next()); System.out.println("请输入电影评分:"); movie.setScore(sc.nextDouble()); System.out.println("请输入电影主演:"); movie.setActor(sc.next()); System.out.println("请输入电影价格:"); movie.setPrice(sc.nextDouble()); //3、把电影对象添加到集合中去 movies.add(movie); System.out.println("上架成功"); } }

转载自CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/2301_78066986/article/details/156784741

网址:集合框架综合小案例 https://mxgxt.com/news/view/1945881

相关内容

框架合同的优势与应用
【基于哈佛框架下的企业财务探析案例:以华谊兄弟为例11000字(论文)】.docx
458个典型案例!产教融合校企合作典型案例(2022)研究报告
【SSM框架解析】——前篇:详解动态代理【案例驱动】(案例源码自取)
中国企业国际化经营:动因、战略与绩效——一个整合性分析框架与例证
徐矿集团与金川集团签订战略合作框架协议
影视公司战略合作框架协议
创力集团与重庆川九签署战略合作框架协议
2025年明星广告策划合作框架协议.docx
球员合同范文:法律框架与实务分析

随便看看