Apple is Apple

일일 회고

 

점점 더 못쓰고 있다.... 시간 짬내서 해보자...

 

오늘의 키워드

  • 기술면접 자문자답

1. enum 은 무엇인가요?

열거형(enum)은 서로 관련 된 상수들의 집합을 정의하는 데이터 타입이다.

예를 들면, 요일, 색 등 고유 값을 나타낼 수 있는 것들에 적용해 볼 수 있다.여러 개의 상수를 선언하고 열거된 값을 조건에 따라 선택할 수 있는 특수한 클래스이고, 자료형이 동일한 상수를 나열할 수 있다

.enum class 이므로 각 열거형 상수에 값을 할당할 수 있고, 메소드를 정의할 수도 있다.이렇게 열거형(enum class)을 사용함으로써, 코드의 가독성과 유지보수성을 향상시킬 수 있다.

  • enum class의 강점은 when을 사용 할 때 나오는데, 모든 형식을 처리할 수 있기 때문에 각 상수에 대한 처리가 간편하고 가독성이 좋아진다.
  • 각 열거형 상수는 해당 클래스의 인스턴스로 간주된다.
  • 코틀린에서는 enum class 키워드를 사용해서 enum을 정의 할 수 있다.
  • 이러한 상수들은 열거형 상수(enum constants)라고 불리며, 종종 프로그램 내에서 고유한 역할을 수행한다.

2. when 은 어떨때 사용하나요?

when은 다음과 같은 상황 에서 사용할 수 있다.

1. 자료형 비교자료형에 관계없이 비교할 수 있다.

변수나 표현식에 지정 된 값에 따라 다양한 작업을 수행할 수 있다.

자료형에 관계없이 비교할 수 있습니다.

<kotlin />
val a: Any = 1223 when(a) { is Int -> // .. is String -> // .. else -> // .. 위를 제외한 나머지 타입일 때 실행 }

2. 복잡한 조건 비교 (if 문 처럼 쓸 수 있음)

if - else if - else 절보다 간략하게 사용해 볼 수 있다.

직접 조건 식을 작성하여 분기 처리를 할 수 있다.

<kotlin />
val score = 85 when { score >= 90 -> println("A") // 90 이상인 경우 score >= 80 -> println("B") // 80 이상인 경우 score >= 70 -> println("C") // 70 이상인 경우 else -> println("F") // 모든 경우에 해당하지 않는 경우 }

3. enum type (열거형) 과 함께 사용

열거형(enum)과 함께 사용할 때 유용하다. 모든 열거형 상수를 다뤄야 하므로 각 상수에 대한 처리가 간편하고 가독성이 좋아진다.

<kotlin />
enum class Season { SPRING, SUMMER, AUTUMN, WINTER } fun getSeasonType(season: Season): String { return when (season) { Season.SPRING, -> "Spring" Season.SUMMER -> "Summer" Season.AUTUMN -> "Autumm" else -> "Winter" } }
profile

Apple is Apple

@mjjjjjj