Kotlin/문법 19

Kotlin - filter, map

filter 컬렉션을 iteration 하면서 주어진 람다에 각 원소를 넘겨서 람다가 true를 반환하는 원소만 필터링 val list = listOf(1, 2, 3, 4, 5) println(list.filter { it % 2 == 0 }) //[2, 4] map 각 원소를 원하는 형태로 변환하는 기능을 하며, 변환한 결과를 모아서 새 컬렉션을 만든다. 결과는 원본 리스트와 원소 개수는 같지만, 각 원소는 주어진 람다에 따라 변환된 새로운 컬렉션이다. val list2 = listOf(1, 2, 3, 4, 5) println(list.map { it * it }) 예시코드 val monthList = listOf(31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31) v..

Kotlin/문법 2024.02.07

Kotlin - 입력 값 받기 (알고리즘 문제 풀기위한)

1. Scanner - nextInt(), nextLine() 등으로 자료형을 손쉽게 지정 가능하다. - 띄어쓰기로 구분되어있는 Integer도 nextInt()로 손 쉽게 가공할 수 있다. - 키보드 입력을 바로바로 전송하는 원리여서 느리다. // 입력값 = DF //27 fun main(args: Array) = with(Scanner(System.`in`)) { val name = nextLine() val age = nextInt() println("name: $name, age:$age") // name: DF, age:27 } fun main(args: Array) = with(Scanner(System.`in`)) { val arr = ArrayList() repeat(5){ arr.add(..

Kotlin/문법 2024.02.06

Kotlin - List vs Array

List ? - 순서가 있는 자료형들의 집합이다 - 불연속적인 메모리 공간을 점유하여 메모리 관리에 용이하다 - 포인터를 사용하여 다음 값을 가르키고 있어 삽입과 삭제 동작이 빠르다 Array ? - 생성 후, 사이즈는 고정, 원소 삭제나 추가 등을 사용할 수 없다. - val / var으로 선언해도 똑같은 동작을 수행한다. - 서로 다른 타입이 공존할 수 있다. - it 키워드가 index 역할을 한다. 큰 차이점 - Array는 고정된 사이즈를 가진다. / List는 사이즈를 변형할 수 있다.

Kotlin/문법 2024.02.05

Kotlin - List 추출하기

- subList : 리스트의 인덱스를 기반으로 리스트의 일부분을 추출하여 새로운 리스트를 생성하는 메서드 - slice : 범위를 추출하여 새로운 리스트를 만드는 메서드 val list = listOf(1,2,3,4) val sub = list.subList(1,4) //[2,3,4] val sliced = list.slice(1..4) //[2,3,4,5] subList / slice 차이점 val mutableList = mutableListOf(1, 2, 3, 4, 5) val sub = mutableList.subList(1, 4) // [2, 3, 4] val sliced = mutableList.slice(1..3) // [2, 3, 4] mutableList[2] = 7 println(su..

Kotlin/문법 2024.02.04

Kotlin - 배열

arr.first() // 첫번째 요소 arr.last() // 마지막 요소 arr.indexOf(인덱스) // 요소의 인덱스 출력 arr.average() // 배열의 평균 값 arr.count() // 요소 개수 arr.sum() // 요소 합 arr.contains(요소) // 요소가 포함되어 있는지 (in과 같음) println(arr) // [I@b684286 //그냥 출력하게되면 arr의 주소값을 출력한다. println(arr.contentToString()) // 사용하면 원소가 출력된다. forEach() // 요소 개수 만큼 지정한 구문 반복 실행 forEachIndexed() // 순환하며 인덱스까지 출력 ( index = i, 요소 = e로 화살표(->)를 사용하여 함께 출력 가능

Kotlin/문법 2024.02.03