상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
궁금한 상식 보기
자연적인 치아미백 방법은 어떤 것이 있나요?
치아미백 방법 중 가정용과 전문용의 차이점은 무엇인가요?
치아미백 효과를 유지하기 위한 제품은 무엇인가요?
월세와 관련된 세금은 어떻게 처리하나요?
월세 거주 중 시설 고장 시 어떻게 해야 하나요?
헥사메딘의 시장 트렌드는 어떻게 변화하고 있나요?
헥사메딘의 품질 보증 프로그램은 어떻게 운영되나요?
노인복지 혜택을 통해 사회적 고립을 줄일 수 있는 방법은?
노인복지 혜택을 수령하더라도 추가 소득이 가능하나요?
개인회생전세대출 신청 시, 어떤 금융기관을 선택할지 결정하는 방법은?
치아 마모 레진 비용이 전치와 후치에 따라 다르나요?
치아 마모 레진 비용을 아끼기 위해 DIY가 가능한가요?
Previous
Next
수정하기 - 코틀린의 패턴 매칭은 어떻게 이루어지나요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
코틀린(Kotlin)에서의 패턴 매칭은 주로 `<a href='https://sangseek.com/sangseeks/when/ko'>when</a>` 표현식을 통해 이루어집니다. `when`은 조건에 따라 다양한 경우를 처리할 수 있는 강력한 도구로, 여러 조건을 간결하게 표현할 수 있게 해줍니다. 코틀린의 `when`은 다른 언어의 switch 문과 유사하지만, 더 많은 기능과 유연성을 제공합니다. 1. <a href='https://sangseek.com/sangseeks/기본 사용법/ko'>기본 사용법</a> `when` 표현식은 특정 값에 대해 여러 조건을 검사하고, 해당 조건이 참일 때 실행할 코드를 정의합니다. 기본적인 사용법은 다음과 같습니다: ```kotlin val x = 5 when (x) { 1 -> println("x는 1입니다.") 2 -> println("x는 2입니다.") 3 -> println("x는 3입니다.") 4, 5 -> println("x는 4 또는 5입니다.") else -> println("x는 1, 2, 3, 4, 5가 아닙니다.") } ``` 위의 예제에서 `when`은 변수 `x`의 값에 따라 다른 메시지를 출력합니다. `4, 5`와 같이 여러 값을 한 조건으로 묶을 수도 있습니다. 2. 조건식 사용 `when`은 특정 값뿐만 아니라 조건식도 사용할 수 있습니다. 예를 들어, 다음과 같이 조건을 직접 정의할 수 있습니다: ```kotlin val y = 10 when { y < 0 -> println("y는 음수입니다.") y in 1..10 -> println("y는 1에서 10 사이입니다.") else -> println("y는 10보다 큽니다.") } ``` 이 경우, `when`은 각 조건을 평가하여 참인 경우에 해당하는 블록을 실행합니다. 3. 타입 검사와 스마트 캐스팅 코틀린에서는 `when`을 사용하여 타입을 검사하고, 조건이 참일 경우 자동으로 타입을 캐스팅하는 스마트 캐스팅 기능을 제공합니다. 예를 들어: ```kotlin fun printLength(obj: Any) { when (obj) { is String -> println("문자<a href='https://sangseek.com/sangseeks/열의/ko'>열의</a> 길이: ${obj.length}") is Int -> println("정수: $obj") else -> println("알 수 없는 타입") } } ``` 위의 예제에서 `is` 키워드를 사용하여 객체의 타입을 검사하고, 해당 타입일 경우 자동으로 캐스팅하여 사용할 수 있습니다. 4. 여러 조건을 결합하기 `when` 표현식에서는 여러 조건을 결합하여 사용할 수 있습니다. 예를 들어: ```kotlin val number = 15 when { number % 2 == 0 -> println("짝수입니다.") number % 2 != 0 && number > 10 -> println("10보다 큰 홀수입니다.") else -> println("10 이하의 홀수입니다.") } ``` 이와 같이 복잡한 조건을 조합하여 사용할 수 있습니다. 5. `when`을 표현식으로 사용하기 코틀린의 `when`은 표현식으로 사용할 수 있어, 결과 값을 반환할 수 있습니다. 예를 들어: ```kotlin val result = when (x) { 1 -> "하나" 2 -> "둘" else -> "기타" } println(result) // "기타"가 출력될 수 있음 ``` 이 경우, `when` 표현식의 결과가 `result` 변수에 저장됩니다. 6. `when`과 Enum 클래스 `when`은 Enum 클래스와 함께 사용할 때도 유용합니다. Enum을 사용하면 코드의 가독성을 높이고, 타입 안전성을 보장할 수 있습니다. ```kotlin enum class Direction { NORTH, SOUTH, EAST, WEST } fun getDirectionMessage(direction: Direction) { when (direction) { Direction.NORTH -> println("북쪽으로 가세요.") Direction.SOUTH -> println("남쪽으로 가세요.") Direction.EAST -> println("동쪽으로 가세요.") Direction.WEST -> println("서쪽으로 가세요.") } } ``` 결론 코틀린의 패턴 매칭은 `when` 표현식을 통해 다양한 조건을 간결하고 명확하게 처리할 수 있는 강력한 기능을 제공합니다. 기본적인 값 비교부터 조건식, 타입 검사, Enum 사용까지 다양한 방식으로 활용할 수 있어, 코드의 가독성과 유지보수성을 높이는 데 기여합니다. 이러한 특성 덕분에 코틀린은 현대적인 프로그래밍 언어로서 많은 개발자들에게 사랑받고 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기