Kotlin list for문 - index loop 포스팅 썸네일 이미지

Kotlin/Collections

Kotlin list for문 - index loop

1. For loop Kotlin에서 for문은 기본적으로 Java의 향상된 for문 처럼 원소로 접근한다. 따라서 index로 for문을 반복하기 위해서는 List에 존재하는 indices 프로퍼티를 사용하거나 forEachIndexed 사용할 수 있다. 2. 코 드 환경 : Kotlin Version = 1.4.10, JVM fun main(args : Array) { val ml = mutableListOf(1, 2, 3, 4, 5) // 리스트 출력 print("1. ") println(ml) // 각 원소 for문 print("2. ") for(a in ml) { print("$a ") } println() // index로 for문 print("3. ") for(i in 0..ml.lastIn..

2020.11.22 게시됨

Kotlin List, MutableList 추가, 삭제, 프로퍼티 포스팅 썸네일 이미지

Kotlin/Collections

Kotlin List, MutableList 추가, 삭제, 프로퍼티

1. List, MutableList List와 MutableList 불변 하는가 그렇지 않는가에 차이이다. mutable = 변할 수 있는, 잘 변하는 List를 상속받는 MutableList public interface MutableList : List, MutableCollection { ... } 마치 변수를 선언할 때 var과 val을 사용하는 것과 같다고 생각하면 된다. 따라서 리스트가 변화가 없을 것이라고 예상된다면 List를 사용하고, 리스트의 원소를 추가하거나 삭제하거나 변화가 있다면 MutableList를 사용하면 된다. +) 정렬 Kotlin sort 정렬 오름차순, 내림차순, 임의 순 1. Sort(정렬) kotlin은 다양한 sort 함수를 제공하여 상황에 맞은 sort 함수를 ..

2020.11.22 게시됨

Kotlin ArrayList<Int> vs. IntArray - 리스트, 배열 포스팅 썸네일 이미지

Kotlin/Collections

Kotlin ArrayList<Int> vs. IntArray - 리스트, 배열

1. ArrayList vs. IntArray 이 둘의 차이점을 간단하게 말하자면 이 둘은 각각 Java에서 ArrayList -> new ArrayList IntArray -> new int[5] 라고 볼 수 있다. 즉, arrayList와 배열간에 가장 큰 차이를 뽑자면 동적, 정적인 크기이다. IntArray는 그냥 Int 타입의 데이터를 저장하는 배열이므로 선언 시 size를 지정해주며 이후 원소를 추가하거나 제거가 불가능하다. ( index를 통하여 값에 접근하여 읽기/쓰기는 가능하다.) 배열(Array) 생성 및 초기화 코틀린(Kotlin) 기본 문법(자료형, 형변환, 배열) 목 차 1. Kotlin 자료형 1-1. 변수 선언 - VAR vs. VAL 1-2. 자료형 1-3. 별칭(typeal..

2020.11.21 게시됨

Kotlin sort 정렬 오름차순, 내림차순, 임의 순 포스팅 썸네일 이미지

Kotlin/Collections

Kotlin sort 정렬 오름차순, 내림차순, 임의 순

1. Sort(정렬) kotlin은 다양한 sort 함수를 제공하여 상황에 맞은 sort 함수를 사용해야 한다. 우선 간단하게 분류를 해보면 우선 sort와 sortDescending 이 있다. sort인 것은 오름차순 sortDescending 처럼 Descending이 붙으면 내림차순으로 정렬을 한다. 또한 sort와 sorted처럼 뒤에 ed가 붙는 것과 붙지 않는 것이 있다. 뒤에 -ed가 붙는 것은 정렬된 List 타입으로 반환해준다. 따라서 -ed가 붙는 sort를 사용해 주는 경우, 해당 리스트에 다시 초기화를 해주어야만 정렬된 리스트를 저장한다. 이 외의 -By, -With와 같은 sort가 존재한다. +) MutableList타입일 경우 sort, sorted 2가지 다 존재하며 sort..

2020.10.11 게시됨

Kotlin JS sort 정렬 오름차순, 내림차순, 임의 순 포스팅 썸네일 이미지

Kotlin/Collections

Kotlin JS sort 정렬 오름차순, 내림차순, 임의 순

1. Sort(정렬) kotlin은 다양한 sort 함수를 제공한다. 간단하게 분류를 해보면 우선 sort와 sortDescending 이 있다. sort인 것은 오름차순 sortDescending 처럼 Descending이 붙으면 내림차순으로 정렬을 한다. 또한 sort와 sorted처럼 뒤에 ed가 붙는 것과 붙지 않는 것이 있다. 뒤에 -ed가 붙는 것은 정렬된 List 타입으로 반환해준다. 따라서 -ed가 붙는 sort를 사용해 주는 경우, 해당 리스트에 다시 초기화를 해주어야만 정렬된 리스트를 저장한다. 2. 코 드 환경 : 1.4.0 JS play.kotlinlang.org/ fun main() { var num = arrayOf(5, 8, 2, 1, 9, 4); println("=======..

2020.10.09 게시됨

Kotlin 변수 묶기 Pair, Triple 포스팅 썸네일 이미지

Kotlin/Collections

Kotlin 변수 묶기 Pair, Triple

1. 2개의 변수 묶기 - Pair data class Pair (val first: A, val second: B) Pair 클래스는 다음과 같이 정의되어 있다. Pair 클래스는 data class로서 2개의 변수를 묶어 사용하기 유용하다. fun main() { var a: Pair = Pair(3, "Kim") var b: Pair = 1 to "Lee" println(b.toString()) b = b.copy(first = 5, second = "god")// 값 변경 if(a.first > b.first) println("a turn") else println("b turn") } pair 변수를 생성하기 위해서는 Pair 생성자를 사용하거나 to를 사용할 수 있다. toString을 호출하..

2020.10.08 게시됨

Kotlin 클래스 비교하기 compareTo 포스팅 썸네일 이미지

Kotlin/Syntax

Kotlin 클래스 비교하기 compareTo

1. 클래스 특정 프로퍼티에 따라 비교 - compareTo 예를들어 Book 이라는 클래스가 존재한다. 이는 name이라는 String 타입 프로퍼티와 price라는 Int 타입의 프로퍼티를 갖는다. 이럴 경우 price 값에 따라 인스턴스를 비교하고 싶다고하면 이럴 때 compareTo를 사용할 수 있다. (직접 수정해보며 실행해볼 수 있다. 로드가 안된다면 새로고침 or play.kotlinlang.org/) operator fun compareTo로 비교 연산자를 사용할 때 price를 기준으로 비교하도록 하였다. 비교 대상과 같다면 0 비교 대상보다 큰값을 같고 있다면 양수(1) 비교 대상보다 작은값을 같고 있다면 음수(-1) 반환해주며 이에따라 따라 결과를 얻을 수 있다. 이 compareTo..

2020.10.07 게시됨

Kotlin 중첩, 내부, 데이터 클래스 포스팅 썸네일 이미지

Kotlin/Syntax

Kotlin 중첩, 내부, 데이터 클래스

1. 중첩 클래스(Nested class) 중첩 클래스(Nested class)는 클래스 안에서 클래스를 선언하는 것이다. 클래스 안에서 선언을하므로 생성하기 위해서는 "바깥 클래스.중첩 클래스" 식으로 생성자를 호출하여야 한다. class One { var one: String = "one" fun print() { println("One") //println("$two") error } class Two { var two: String = "two" fun print() { println("Two") //println("$one") error } } } fun main() { var one = One() one.print() var two = One.Two() two.print() } 여기서 중요한점..

2020.10.06 게시됨