개발 블로그

  • 홈
  • 태그
  • 방명록
  • 소개

enum equals vs == 1

[Java] enum 비교에서는 equals(), == 둘 중 어떤 것이 적합한가?

enum class에서 비교는 ==가 적합한가 equals()가 적합한지에 대해서 고민해 봤습니다. 자바의 enum class는 singleton이기 때문에, == 비교가 적합하다고 생각했습니다. (equals() 보다 속도도 빠릅니다)왜냐하면 런타임 시점에서의 NPE 방지뿐만 아니라, 컴파일 시점에 타입 호환성까지 check해주는 장점이 있기 때문입니다. equals() 비교를 통해 값을 비교했다면 그대로 컴파일되었을 것이라고 판단됩니다. enum의 class를 뜯어봤을 때, 결정적으로 == 비교를 하는 것을 확인할 수 있습니다. 즉, == 비교를 내부적으로 하고 있지만, 위의 장점들 뿐만 아니라 비교하려는 상수를 앞에 둬야 NPE를 방지할 수 있는 번거로움을 없애려면 == 비교가 적합하다고 생각합니다..

Java/Java Concept 2024.05.16
이전
1
다음
더보기
프로필사진

[IT(PS, CS, SW, etc.) 지식 기록] Github : https://github.com/daily1313/

  • 분류 전체보기 (376) N
    • 일상 (33)
      • 여행 (17)
      • 회고록 (9)
      • 리뷰 (7)
    • PS (138)
      • 그리디 알고리즘[Greedy] (25)
      • 정렬 알고리즘[Sort] (18)
      • 문자열 알고리즘[String] (14)
      • 동적 계획 알고리즘[DP] (17)
      • 깊이 우선 탐색, 너비 우선 탐색[DFS, BFS.. (34)
      • 재귀[Recursion] (2)
      • 백트래킹[Backtracking] (5)
      • 브루트포스 알고리즘[Bruteforce] (16)
      • 자료 구조[Data Structure] (4)
      • 분할 정복 알고리즘[Divide & Conquer.. (3)
    • CS (22)
    • Network (11)
    • Database (4)
      • Elasticsearch (2)
    • Linux (2)
    • JavaScript (4)
      • AngularJS (1)
    • Java (90) N
      • Effective Java (4) N
      • Java Concept (20)
      • Spring (60)
      • Design Pattern (3)
    • Python (2)
    • Vscode (1)
    • DevOps (2)
      • AWS (27)
      • Git (7)
      • Docker (6)
      • Nginx (1)
    • SQL (4)
    • 자격증 (9)
    • 기타 (9)

Tag

BFS, 회고록, 다이나믹 프로그래밍, 너비 우선 탐색, git, Wi-Fi, 백트래킹, dp, 정보처리기사 필기, AWS, docker, dfs, 일본여행, 메타코딩, springboot, 정보처리기사 실기, 정보처리기사, 컴퓨터구조, Spring, sqld,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • 스승님
  • 갓태수
  • 갓동웅

티스토리툴바