[JAVA] 도전! - 영화 평점 관리 시스템

2024. 5. 16. 17:09·JAVA

예제 개념: 영화 평점 관리 시스템

상황 설명: 사용자가 영화에 평점을 주고, 평점에 따라 영화 추천 목록을 관리하는 시스템입니다. 사용자는 영화에 1부터 5까지의 평점을 줄 수 있으며, 평점이 높은 영화부터 낮은 순으로 정렬하여 보여줍니다.

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;

public class MovieRayiongSystem {

	public static void main(String[] args) {
		// Movie object 계속 추가하는 자료구조
		ArrayList<Movie> movies = new ArrayList<Movie>();
		movies.add(new Movie("범죄도시 4", 5));
		movies.add(new Movie("기생충", 4));
		movies.add(new Movie("올드보이", 5));
		movies.add(new Movie("인생은아름다워", 3));
		
		System.out.println(movies);
		for (Movie movie : movies) {
			System.out.println(movie.getTitle());
		}
		System.out.println("----------------------");
		for (int i = 0; i < movies.size(); i++) {
			// 배열이 아님 -> get() 메서드 사용
			System.out.println(movies.get(i).getTitle());
		}
		
		// 어떤 데이터를 정렬을 하려면 정렬 알고리즘을 구현해서 기능을 만들어 주면 된다.
		// 버블 정렬, 퀵, ......
		
		Collections.sort(movies, new Comparator<Movie>() {
			@Override
			public int compare(Movie m1, Movie m2) {
				
				return Integer.compare(m2.getRating(), m1.getRating());
			}
		});
		System.out.println("---------------------");
		// 평점 순으로 정렬된 영화 목록 출력
		for (Movie movie : movies) {
			System.out.println(movie);
		}
		
		
	} // end of main

}// end of class


class Movie{
	
	private String title;
	private int rating;
	
	public Movie(String  title, int rating) {
		this.title = title;
		this.rating = rating;
	}

	public String getTitle() {
		return title;
	}

	public int getRating() {
		return rating;
	}
	
	@Override
	public String toString() {
	
		return "Movie [title=" + title + ", rating=" + rating + "]";
	}
	
	
	
}

실행 화면________

'JAVA' 카테고리의 다른 글

[JAVA] 파일복사(문자기반 입/출력), ZIP파일로 압축  (0) 2024.05.21
[JAVA] 도전! - 회원 가입 순서 기록 및 조회 시스템  (0) 2024.05.16
간단한 RPG 게임 만들기 (기초단계1 --> 코드 완성X)  (0) 2024.04.16
[JAVA] 형 변환 문제 (할인율)  (0) 2024.04.16
[JAVA]Java 키워드  (0) 2024.04.16
'JAVA' 카테고리의 다른 글
  • [JAVA] 파일복사(문자기반 입/출력), ZIP파일로 압축
  • [JAVA] 도전! - 회원 가입 순서 기록 및 조회 시스템
  • 간단한 RPG 게임 만들기 (기초단계1 --> 코드 완성X)
  • [JAVA] 형 변환 문제 (할인율)
미로910
미로910
개발자를 꿈꾸는 민경이의 기록 블로그
  • 미로910
    개발 note
    미로910
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 설치 메뉴얼
      • HTML
      • JAVA
        • Java 기초
        • Java 응용
        • 자료구조
        • HTTP
        • JSP 프로그래밍
      • MySQL
        • MySQL 기본
        • 1일 1쿼리
      • CSS
      • Spring boot
      • JS
        • 게시판 만들기
      • Git
      • Flutter
        • MVVM 활용
        • 심화 버전
        • 1일 1 Flutter
      • 디자인 패턴의 활용
      • error note
      • My Project
        • [졸작] LLM 기반 특허 유사도 분석 시스템
        • 도서 관리 프로그램 (final project)
        • amigo
        • 친구 매칭 프로그램(FMP)
      • Python
      • 딥러닝
      • 네트워크
      • 공부 노트
        • 연구회
        • 자료구조
      • 기타
  • 블로그 메뉴

    • 홈
    • 전체보기
    • -----------------------
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Flutter
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
미로910
[JAVA] 도전! - 영화 평점 관리 시스템
상단으로

티스토리툴바