Map Index
정말 간단하게 설명하면 리스트에 있는 원소에 배치되어있는 순서에 맞게 지수를 붙여주는 함수입니다.
만약 list a,b,c 가 있다면 그 리스트에 붙여져있는 index(지수)를 매겨줍니다.
명칭은 언제나 다양하게 변할 수 있지만 mapIndex 뒤에 나오는 {index, element는 단어가 바뀌어도 위치에 따라 인지 됩니다.
그래서 아래화면처럼 단어가 바뀌어도 그 자리에 있어서 기능을 하고 있는 모습을 볼 수 있습니다.
val result = list. mapIndexed { a, b -> 이 다음부분에 공식을 넣어주면 됩니다.
공식을 넣은 예시입니다.
Map Index를 굳이 사용해야할까?
프로그래머스에서 이상한 문자 만들기 연습 문제에서 map index를 연습할 수 있습니다.
이상한 문자 만들기는 홀수 배열에 있는 알파벳만 대문자로 바꾸는 문제를 냈는데, 저도 처음에는 for 문과 if문을 사용해서 풀었습니다.
아래처럼 되면 풀리긴 하지만, 모든 경우의 수에서 풀리지 않습니다.
아래의 코딩으로 반영할 수 있는 경우는 소수에 달한다는 것이죠.
그래서 다른 문제들을 서치했는데 다들 map index만 사용하더라고요. 왜 그런건가 싶었는데 저런 공식에서 map index를 사용하면 풀 수 있는 문제들이 많아집니다.
그리고 이 함수는 코틀린에 존재합니다. 다른 곳은 잘 모르지만, 자바하고 파이썬은 구현하려면 반복문을 써야하는 것으로 알고 있습니다.
코틀린이 편하긴 하지만 정말로 코딩을 배우려면 자바부터 시작해야했지 않았나 싶기도 하네요.
수학적인 사고능력이 적어도 활용할 수 언어가 코틀린이지 않나 싶습니다.
더 편리한 기능들을 더 조사해서 들고 오겠습니다.
좋은 하루 되세요
'코틀린' 카테고리의 다른 글
[코틀린 / Kotlin] 리스트 중복 요소 제거 (0) | 2024.03.25 |
---|---|
[코틀린/Kotlin] Replace 문자열 교체 (숫자 영어문자열) (0) | 2024.03.20 |
코틀린 [Abstract class] 추상함수 (2) | 2024.03.08 |
나누어 떨어지는 숫자배열 코틀린 (0) | 2024.02.13 |