목록전체 글 (116)
App노자
1. 지연 초기화란? 코틀린은 변수 선언 시 초기화를 할 것을 권고하며 변수 선언 시 초기화를 하지 않거나 nullable 타입으로 만들어주지 않으면 컴파일 에러가 발생한다. 클래스에서도 기본적으로 선언하는 프로퍼티 자료형들은 null을 가질 수 없기 때문에 생성자에서 초기화하거나 매개변수로부터 값을 초기화하는 것이 규칙이다 하지만 객체의 정보가 나중에 나타나는 경우 객체 생성과 동시에 초기화하기 힘들어지는데 이때 사용하는 게 지연초기화이다 지연초기화는 lateinit과 lazy키워드를 통해 사용할 수 있다 2. lateinit class Person { lateinit var name: String fun test() { if(!::name.isInitialized) { // 프로퍼티의 초기화 여부 판..
1. 컬렉션이란? 컬렉션이란 자주 사용하는 기초적인 자료구조를 모아 놓은 일종의 프레임워크이다 코틀린의 컬렉션은 자바 컬렉션의 구조를 확장 구현한 것이다 컬렉션의 종류로는 List, Set, Map 등이 있으며 불변형과 가변형으로 나뉘며 가변형 컬렉션은 객체에 데이터를 추가하거나 변경할 수 있고 불변형 컬렉션은 데이터를 한번 할당하면 읽기 전용이 된다 2. 연산자(operators) 기능 메서드 fun main() { val list1: List = listOf("one", "two", "three") val list2: List = listOf(1, 3, 4) val map1 = mapOf("hi" to 1, "hello" to 2, "Goodbye" to 3) println(list1 + "four"..
1. sequence란? sequence는 순차적인 컬렉션으로 요소의 크기를 특정하지 않고 나중에 결정할 수 있는 컬렉션이다 특정 파일을 줄 단위로 읽어서 요소를 만들 때 해당 파일의 끝을 모르면 줄이 언제 끝날지 알 수 없는 경우에 사용할 수 있다 처리 중에는 계산하고 있지 않다가 toList()나 count() 같은 최종 연산에 의해 결정된다 https://kotlinlang.org/docs/sequences.html Sequences | Kotlin kotlinlang.org 2. sequence 생성 //sequenceOf() val numbersSequence = sequenceOf("four", "three", "two", "one") 요소를 인수로 나열하는 sequenceOf() 함수로 생성..
1. Set이란? Set은 정해진 순서가 없는 요소들의 집합을 나타내는 컬렉션이다 List와 달리 동일한 요소를 중복해서 가질 수 없고 모든 요소가 유일한 값이어야 한다 헬퍼 함수인 setOf()을 이용해 불변형 Set을 생성하고 mutuableSetOf()를 사용해 가변형 Set을 생성할 수 있다 https://kotlinlang.org/docs/kotlin-tour-collections.html#set Collections | Kotlin kotlinlang.org 2. 불변형 Set fun main() { val mixedTypesSet = setOf("Hello", 5, "world", 3.14, 'c') // 자료형 혼합 초기화 var intSet: Set = setOf(1, 5, 5) // 정..
1. android.os.Build란? android.os.Build는 안드로이드 운영체제에서 제공하는 클래스로, 기기와 관련된 정보를 제공하는 정적 필드 및 메서드를 포함한다 이 클래스를 통해 앱은 기기의 다양한 속성과 정보에 접근할 수 있으며 시스템 속성에서 추출한 현재 빌드 중인 단말에 대한 정보로 제조사나 API레벨 OS버전 등을 알고 싶을 때 활용한다 https://developer.android.com/reference/android/os/Build Build | Android Developers developer.android.com 2. 사용방법 import android.os.Build class DeviceInfo { val brand: String get() = Build.BRAND ..
1. List란? List란 순서에 따라 정렬된 요소를 가지는 컬렉션이다 헬퍼함수인 listof()를 사용하여 값을 변경할 수 없는 불변형 List를 만들고 mutableListOf()를 사용해 값을 변경할 수 있는 가변형을 표현한다 불변형 List에서는 인자는 원하는 만큼의 가변 인자를 가지도록 vararg로 선언할 수 있다 https://kotlinlang.org/docs/kotlin-tour-collections.html#list Collections | Kotlin kotlinlang.org 2. 불변형 List fun main() { var numbers: List = listOf(1, 2, 3, 4, 5, 1) var names: List = listOf("one", "two", "three..
1. Array 클래스란? fun main() { val numbers = arrayOf(4, 5, 7, 3) val animals = arrayOf("Cat", "Dog", "Lion") for (element in numbers) { print("$element, ") } println() for (e in animals) print("$e, ") } 코틀린에서 배열은 Array 클래스로 표현된다 기본적으로 배열은 1차원적으로 순서 번호에 해당하는 인덱스와 값이 들어 있는 자료형에 따른 요소의 저장 공간을 가지고 있다 기본적인 배열을 생성하기 위해서는 ArrayOf()나 Array(), 빈 상태의 배열을 지정하는 경우 arrayOfNulls를 사용할 수 있다 https://kotlinlang.org/..
1. Ripple Effect이란? Ripple Effect(물결 효과)는 사용자가 터치나 클릭과 같은 특정 동작을 수행할 때 발생하는 시각적 효과를 말한다 이 효과는 마치 물방울이 물에 떨어져서 생기는 원형 파동과 같은 모습을 모방하여 구현됩니다. 안드로이드에서는 이 효과를 통해 사용자 인터페이스(UI) 요소에 대한 피드백을 제공하고, 사용자가 해당 요소를 누르거나 터치했을 때의 인터랙션을 시각적으로 나타내기 위해 주로 사용됩니다. https://developer.android.com/reference/android/graphics/drawable/RippleDrawable RippleDrawable | Android Developers developer.android.com 2. MaterialBut..