Kotlin
-
[Kotlin] 코틀린이란Kotlin 2021. 4. 2. 10:22
1. 대상 플랫폼 : 자바가 실행되는 모든 곳 코틀린의 주목적은 현재 자바가 사용되고 있는 모든 용도에 적합하면서도 더 간결하고 생산적이며 안전한 대체 언어를 제공하는 것이다. 주로 자바가 많이 사용되는 백엔드, 안드로이드 app에서 주로 쓰인다. 2. 특징 정적 타입 지정 언어 자바와 마찬가지로 정적 타입 지정 언어다. 코틀린은 타입 추론을 지원하므로 정적 타입 지정 언어에서 타입을 직접 선언해야 하는 불편함이 사라진다. 정적 타입 지정 언어는 프로그램 구성 요소의 타입을 컴파일 시점에 알 수 있고 프로그램 안에서 객체의 필드나 메소드를 사용할 때마다 컴파일러가 타입을 검증해준다. 정적 타입 지정 언어의 특징은 다음과 같다. 성능 - 실행 시점에 어떤 메소드를 호출할지 찾는 과정이 필요 없으므로 메소드..
-
[Kotlin] 람다Kotlin 2021. 3. 29. 16:04
람다(lambda)는 다른 함수에 넘길 수 있는 작은 코드 조각을 뜻한다. data class Person(val name : String, val age : Int) fun findTheOldest(people : List){ var maxAge = 0 // 연장자 나이 var theOldest : Person? = null // 연장자를 저장할 변수 for(person in people){ if(person.age > maxAge){ maxAge = person.age theOldest = person } } println(theOldest) } 람다를 사용하지 않고 가장 연장자인 사람을 찾는 코드를 작성한다면 위와 같은 코드처럼 작성 할 수 있다. 하지만 코드가 짧지않고 비교연산자를 반대로 쓰는등 ..
-
[Kotlin] 스트림 함수(1)Kotlin 2019. 10. 17. 21:16
1.map() 컬렉션 내 인자를 다른 값이나 타입으로 변환할 때 사용합니다. fun main() { val foods = listOf("Rice", "Bread", "Berry", "Potato", "Button Mushroom", "Melon", "Kiwi") // 음식 이름을 받아서, 이름의 문자열 길이로 변환합니다. foods.map { food -> food.length }.forEach { print("lenth = $it, ") } println() // 음식 이름을 소문자로 변환합니다. foods.map { food -> food.toLowerCase() }.forEach { print("$it, ") } } lenth = 4, lenth = 5, lenth = 5, lenth = 6, le..
-
[Kotlin] for문Kotlin 2019. 9. 27. 21:16
Kotlin은 for - each문 형태만 지원합니다. 인자 타입을 생략할 수 있습니다. indicies를 사용하여 현재 항목의 인덱스를 가져올 수 있습니다. val nums : List = arrayListOf("1","2","3") for(num in nums.indices) { println(nums[num]) } 범위를 나타낼 때는.. 연산자를 사용합니다. .. 연산자 대신 until을 사용하면 마지막 값을 포함하지 않는 범위를 나타낼 수 있습니다. val nums : List = arrayListOf("1","2","3") for(num in 0..2) {println(nums[num])} // 동일한 의미 for(num in 0 until 3) {println(nums[num])} 범위 내 특..
-
[Kotlin] 자료형Kotlin 2019. 9. 27. 18:46
기본 자료형 Byte Short Int Long Char Float Double Boolean 값을 다른 자료형으로 바꿔줄 때에는 to() 함수를 사용한다. val doubleNum : Double = 1.1 val num : Int = doubleNum.toInt() 문자열 내 특정 위치의 문자에 접근하려면 get()이나 []를 사용합니다 val abc = "ABC" // 'A'출력 println(abc.get(0)) // 'A'출력 println(abc[0]) 문자열에 포함할 인자는 앞에 $를 붙여 구분한다. ( 표현식을 넣고 싶으면 {}으로 구분한다.) val text = "Kotlin" val hello = "Hello $text" 비트 연산자 Java Kotlin 의미 & and 비트 연산 AN..
-
[Kotlin] 정의Kotlin 2019. 9. 27. 16:57
소개 Kotlin은 젯 브레인에서 만든 언어이다. 2016년 2월 정식 버전이 출시되었다. 자바와 100% 호환이 가능한 언어이다. 구글 I/O 2017에서 안드로이드의 공식 지원 언어로 채택되었다. 특징 문장 끝에 세미콜론을 넣지 않아도 된다. new 키워드를 쓰지 않고 객체를 생성한다. 타입 추론을 지원하여 일반적인 경우 타입을 안 적어도 된다. null값의 허용 여부를 명확하게 구분한다. val와 var로 가변/불변을 명확하게 구분한다. 컬렉션 자료형에서는 객체에 할당된 값이 아닌 컬렉션 내 포함된 자료들을 추가/삭제가 가능한지 여부를 구분한다. 람다식을 지원한다. 스트림 API 지원한다, 참고문헌: 김태호, [커니의 코틀린], 인사이드, 2017년