일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 테스트
- LifeCycle
- ScrollView
- android
- DART
- tabbar
- Button
- scroll
- viewmodel
- 안드로이드
- Navigation
- Compose
- 앱바
- textfield
- activity
- 앱
- Dialog
- TEST
- intent
- Kotlin
- textview
- Coroutines
- drift
- 계측
- appbar
- binding
- livedata
- Flutter
- data
- CustomScrollView
- Today
- Total
목록안드로이드/Kotlin (17)
Study Record
😶 vararg 키워드 varage 키워드를 사용하면 동일한 유형의 가변적인 인수 수를 함수나 생성자에 전달할 수 있다. fun main() { hello("love", "like", "code", "happy") } fun hello(vararg a: String) { print(a[2]) } 위의 예시 코드와 같이 함수의 매개변수로 vararg 키워드를 사용하면 hello 함수의 인자들의 값이 a 의 목록 요소들로 자동으로 들어간다. 다음은 클래스를 정의할 때 vararg 키워드를 사용하는 예시이다. class Vegetables(vararg val toppings: String) { override fun toString(): String { return toppings.joinToString() ..
😶 Null safety Kotlin 에는 많은 프로그래밍 언어에서 발생하는 NullPointerException 줄여서 NPE 가 발생하는 것을 방지하기 위한 기술이 포함되어 있다. Kotlin 에는 null 을 포함하냐 포함하지 않냐에 따라 변수의 데이터 타입을 정할 수 있다. null 을 포함하는 변수를 만들면 말 그대로 null 을 포함할 수 있고 null 을 포함하지 않은 변수를 만들면 절대로 null 이 될 수 없다. 선언하는 방식은 "?" 기호를 데이터 타입에 붙이면 null 을 포함하게 되고 "?" 기호를 붙이지 않으면 null 을 포함하지 않은 변수를 뜻한다. var a : String? = null var b : Int = 5 😶 null 일 경우 실행하지 않음(?.) 클래스의 멤버 변..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/84UDU/btsmOjjPAnu/RbAT34j44VWEtokvLeAiCk/img.png)
😶 클래스 선언 클래스는 class 키워드와 클래스 이름, 클래스 헤더(파라미터, 생성자 등을 포함), 클래스 바디({} 안에 들어가는 내용) 로 이루어져 있다. 헤더와 바디는 선택적 옵션으로 없어도 무방하다. class Person { /* class body */ } 😶 생성자(Constructors) Kotlin 에서 생성자는 Primary 생성자와 하나 이상의 Secondary 생성자들을 가질 수 있다. Primary 생성자는 클래스 헤더에 속하며 클래스 이름 앞, 타입 파라미터 옵션 앞에 붙는다. Primary 생성자의 constructor 키워드는 생략 가능하다. // primary 생성자 class Person constructor(firstName: String) {} // 키워드 생략 가..
😶 if 문을 사용한 조건 설정 val num = 5 if (num > 5) { println("${num}은 5보다 큽니다.") } else if(num println("숫자는 1입니다.") 2 -> println("숫자는 2입니다.") 3 -> println("숫자는 3입니다.") 4 -> println("숫자는 4입니다.") 5 -> println("숫자는 5입니다.") else -> println("숫자는 1~5가 아닙니다.") }
😶 변수 val age = 5 'val' 은 Kotlin 에서 사용하는키워드이며 변수 앞에 붙는다. val 앞에 오는 것이 변수 이름(age) 으로 "=" 는 age 변수에 뒤에 오는 5를 할당한다는 의미이다. 'val' 키워드로 선언된 변수는 한 번만 값을 설정할 수 있다. 나중에 변경하는 것은 불가능하다. (읽기 전용) var x = 5 x = 3 'var' 는 Kotlin 에서 사용하는 키워드이며 "val" 와 같이 변수 앞에 붙는다. 'var' 키워드로 선언된 변수는 변경할 수 있다. val variable = 3 println("Hello! ${variable}") ${} 기호 사이에 변수 이름을 넣어주면 문자열 사이에서 변수로 인식된다. 따라서, println() 함수의 출력값은 "Hello!..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b45Zak/btryE1SdqeU/sUKz4NbZFxfHnr2KvPw8Ek/img.png)
😶 Collection 컬렉션은 어떤 관련 항목의 그룹을 뜻하며 순서가 지정된 항목 / 순서가 지정되지 않은 항목이 있을 수 있고, 항목이 고유하거나 고유하지 않을 수 있다. 컬렉션의 종류에는 Array, List, Set, Map 이 있으며 Mutable 키워드가 붙어있으면 항목을 수정/삭제/추가를 할 수 있지만 Mutable 키워드가 없으면 불가능하다. 😶 Array (배열) 배열은 요소(항목)이라고 하는 값이 여러개 포함되어 있고 순서가 지정되어 색인(index)으로 엑세스된다. 색인이란 배열의 요소에 상응하는 정수이다. 배열의 크기는 고정되어 있어 따로 요소를 추가할 수 없다. Array 선언 val testArray = arrayOf("happy", "Venus", "Earth") Array 사..
Java Lambda expression button.setOnClickListener(new View.OnClickListener() { @override public void onClick(){ } }) Kotlin Lambda expression button.setOnClickListener { v -> } NullSafe 한 코드를 사용하기 위해 non-null Type으로 변수를 선언할 때 초기값이 없을 경우! 1. lateinit var nullableNumber: Int? = null lateinit var lateinitNumber: Int // 추후 초기화 lateinitNumber = 10 // 사용할 때 nullableNumber?.add() lateinitNumber.add() 2...
Apply 함수 - 객체의 확장 함수이다. - this를 통해 접근이 가능하다. ( this 생략 가능 ) - 외부에서 객체의 프로퍼티에 접근할 수 있다. - 반환값이 자기 자신이 된다. - 주로 객체를 초기화할 때 사용한다. val person = Person().apply { firstName = "Fast" lastName = "Campus" } Also 함수 - 객체가 파라미터로 전달된다. - 객체가 변수에 할당되기도 전에 객체에서 호출할 수 있다. - 람다의 입력값으로 오게 된다. - 파라미터명을 생략하면 it으로 받는다. - 객체의 유효성을 확인하거나 디버깅하는 용도로 사용된다. Random.nextInt(100).also { print("value : $it") } Random.nextInt..