Kotlin/TIL

TIL (03.27)

내손은개발 🐾 2024. 3. 27. 21:19

KodeCata


 

[프로그래머스_Kotlin] 신고 결과 받기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 신

rlawog.tistory.com

새로 알게된 내용

flatten

중첩된 컬렉션(리스트 안에 리스트, 맵 안에 리스트 등)을 평면화하여 하나의 단일 컬렉션으로 만드는 함수입니다. 즉, 중첩된 구조를 가진 컬렉션을 평평한 구조로 변경합니다.

예시코드

val exList = listOf(listOf(1, 2, 3), listOf(4, 5, 6), listOf(7, 8, 9))

val exList = nestedList.flatten()
println(exList) // [1, 2, 3, 4, 5, 6, 7, 8, 9]

 

groupingBy

컬렉션의 요소를 그룹화하는 함수입니다. 이 함수는 각 요소를 특정 기준에 따라 그룹으로 나누고, 각 그룹에 대한 맵을 반환합니다.

val list = listOf("apple", "banana", "apricot", "orange", "pear")

val groups = list.groupingBy { it.first() }

for ((key, elements) in groups) {
    println("$key: ${elements.toList()}")
}
//출력
a: [apple, apricot]
b: [banana]
o: [orange]
p: [pear]

 

 

filterNotNull

fun main(){
    val exList = listOf("Pizza", null, "Risotto", "Pasta", "Hamburger")
    println(exList.filter { it.startsWith('P') }) // X
    println(exList.filterNotNull().filter { it.startsWith('P') })
}

null이 있는경우 filter에 it?.startsWith("P") ?: false 처럼 사용할 수 있지만 filter을 통해 null을 제거하고 할 수 있다.

 

 

 

 

Android


사진을 등록하면 이미지가 사각형으로 등록이 되었는데 프로필사진처럼 동그랗게 저장하고 싶어 찾아보다가

CircleImageView를 찾아서 사용해보았다.

 

 

 

 

 

 

 

 

Today

 

- 첫째주에 했던 프로젝트에서 생각없이 블로그와 공식문서로만 보고 구현했던 RecyclerView를 다시 사용해 보았다. 아직 이해를 완벽히 못했다. 

-> 2주차 특별과제가 나왔는데 또 만들기에는 의미가 없을 것 같아서 RecylerView를 이해해서 사용할 수 있을 정도면 구현을 해볼 생각이다.

- 과제 진행으로 Activity와 Fragment의 생명주기에 대해 정리하였다. 나머지도 정리되고 한번에 올릴 예정이다.

'Kotlin > TIL' 카테고리의 다른 글

TIL (03.29)  (2) 2024.03.29
TIL (03.28)  (0) 2024.03.28
TIL (03.26)  (0) 2024.03.26
TIL (03.25)  (1) 2024.03.25
TIL (03.22)  (1) 2024.03.22