본문 바로가기

개발자/kotlin 코틀린

kotlin 06. 연산자, 프로퍼티, 생성자, 오버로딩 051 = = =, != = 연산자 String 타입의 리터럴로 이루어진 표현식에 한해서 참조변수에 동일한 문자열을 저장하면 컴파일러는 매번 새로운 문자열을 생성하지 않고 하나의 문자열을 가리키도록 만든다. 코틀린의 === 연산자는 자바의 == 연산자와 같다. fun main(args: Array) { var a = "one" var b = "one" println(a === b) b = "on" b += "e" println(a !== b) b = a println(a === b) } 결과 true true true 052 멤버 함수(Member Function) 클래스에 내장된 함수를 말한다. fun main(args: Array) { val building = Building() building.n..
kotlin 05. 파일분리, 패키지, import, object, heap, class 041 소스 파일 여러 개로 분리하기 // a와 b 중 더 큰 수를 반환하는 함수 fun max(a: Int, b: Int): Int = if (a > b) a else b // a와 b 중 더 작은 수를 반환하는 함수 fun min(a: Int, b: Int): Int = if (a = 0) num else -num 042 패키지(Package) 코틀린 프로젝트에는 모듈이 있고 모듈은 다시 패키지로 구성되어 있습니다. 그리고 패키지는 파일(클래스)로 구성되어 있습니다. 코틀린 파일은 .kt 확장자를 가지며 맨 위에는 이 파일이 어떤 패키지에 포함된 것인지 코틀린 컴파일러가 알 수 ..
kotlin 04. 매개변수, 인수, 범위, 함수 오버로딩, 스택 예제 코드 031 매개변수(Parameter)와 인수(Argument) 함수는 고정된 구문으로 이루어져 있지만 함수에 값을 전달하는 방식으로 함수가 다양한 일을 할 수 있도록 한다. 함수 이름 옆의 소괄호 안에 변수를 선언하는 방식으로 값을 전달하는 데 이를 매개변수라 한다. 매개변수를 선언할 때는 var, val 키워드를 붙이지 않는다. 매개변수는 무조건 val 선언이므로 값을 수정할 수 없는 변수다. fun main(args: Array): Unit { println(cToF(30)) println(getAverage(89, 96)) } fun cToF(celsius: Int): Double { return celsius * 1.8 + 32 } fun getAverage(a: Int, b: Int): Doubl..
kotlin 03. 제어문과 함수 기초 if( )와 else의 중첩 fun main(args: Array): Unit { val score = 88 if (score >= 90) { println('A') } else { if (score >= 80) { println('B') } else { if (score >= 70) { println('C') } else { println('F') } } } } 결과 B 너무 중첩되어 있어 보기 힘든 코드가 되었다. 대괄호 안의 문장이 한 개면 { }를 생략할 수 있고 if~ else 구문은 if ~ else if~ 구문으로 바꿀 수 있으니, 필요 없는 문장을 지워 단순하게 만들면 다음과 같다. fun main(args: Array): Unit { val score = 88 if (score >= 90..
kotlin 02. 문자열, 연산자, 제어문 문자열(String)이란 문자들을 일렬로 나열한 것을 말한다. fun main(args: Array): Unit { var str: String = "Hello" println(str) str = str + "\nKotlin!" println(str) println(str[8]) val num = 10 * 5 + 3 println(str + num) } 결과 Hello Hello Kotlin! t Hello Kotlin!53 문자열 안에 표현식의 값을 집어넣기: 표현식이나 변수값에 "$"표시를 사용하면 문자열에 포함된다. $ 문자 자체를 나타내려면 '\$'를 사용한다. fun main(args: Array): Unit { val a = 10 val b = 20 println("a의 값: $a") prin..
kotlin 기본 예제 01 모든 프로그래밍 언어를 배울 때 까장 먼저 만나는 것이 Hello world를 보는 것이다. 일단 보자. 코드를 입력하고 실행까지 웹에서 할 수 있다. 바로 코틀린 플레이 그라운드다. Hello, Kotlin! fun main(args: Array): Unit { println("Hello, Kotlin!") } 결과 Hello, Kotlin! 표현식(Expression) 단독으로 표현식이 나와도 에러가 아니다. 아래 53+62-126 fun main(args: Array): Unit { 53 + 62 - 126 println(53 + 62 - 126) } 결과 -11 변수(Variable)란 어떤 값을 저장해 놓은 공간이라고 이해하면 쉽다. 물론 다른 값으로 변하기도 하고, 보관 시간을 마음대로 길거나..
Kotlin 입문 참고 자료 Kotlin 시작하기 추가 리소스 Kotlin으로 더 많은 작업을 하는 데 도움이 되는 추가 학습 리소스는 다음과 같습니다. 사이트 kotlinlang.org - Kotlin의 모든 것을 알려주는 JetBrains 사이트입니다. 가이드 Hello World - Kotlin 기능 및 구문을 보여주는 JetBrains의 대화형 가이드입니다. 동영상 프로그래머를 위한 Kotlin 부트캠프: 이 Udacity 과정에서는 Kotlin의 필수 요소를 설명합니다. YouTube에서 'Kotlin on Android' 검색: 이 링크에는 Kotlin 관련 YouTube 동영상 목록이 포함됩니다. Kotlin 프로그래밍 소개: 이 O'Reilly 과정에서는 Kotlin 언어를 소개합니다. 초보자를 위한 Kotlin: 초..
Kotlin 핵심 개념 알아보기 2 Kotlin 핵심 개념 알아보기 1 에 이어 나머지 핵심 개념을 알아보자. 여기에서는 앞 편에 더해 제어부, 함수, 클래스에 대한 설명을 추가한다. 스마트 형 변환 스마트 형 변환은 한 변수 형식을 다른 형식으로 변환하지만, 안전 형변환과는 다르게 암시적으로 변환을 수행한다. 일반적으로 스마트 형변환은 모든 불변 참조(val)과 로컬 가변 참조(var)에 사용할 수 있다. 다음과 같은 두 가지 스마트 형변환이 있다. 형식 스마트 형변환은 객체를 한 형식에서 다른 형식으로 변환한다. null 가능성 스마트 형변환은 null 허용 참조를 null 불허 참조로 변환한다. 명시적 타입 변환할 때 사용하는 as와 as?를 사용한다. (as, as? 연산자) 스마트 캐스트는 두 가지 경우에 자동으로 수행되는데 첫 ..