달력

8

« 2020/8 »

  •  
  •  
  •  
  •  
  •  
  •  
  • 1
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
  •  


 

 

Kotlin 조건삼항연산자(No Support)

Kotlin에서는 조건삼항연산자가 없으며 If Expression 형식 통해 삼항연산자와 동일한 기능을 수행할 있습니다.

 




Posted by codedragon codedragon

댓글을 달아 주세요


 

 

Kotlin - 클래스 정의

프로그래머들이 하나의 사물(객체) 자바라는 프로그램 언어를 통해 추상적으로 사물(객체) 속성과 동작을 표현 것을 말합니다.

 

 

 

MP3 Player 클래스로 간단히 정의해 보기

 

클래스명

MP3Player

속성부분

·       색상을 기억하는 color 속성

·       볼륨크기를 기억하는 volumn 속성

·       메모리 용량을 기억하는 memory 속성

동작부분

·       memory용량을 upgrade해주는 upMemory 동작

·       volumn 크기를 up/down해주는 upVolumn/downVolumn 동작

·       color 설정하는 setColor 동작

 

클래스 구조도


소스코드

 class MP3Player {

    var color: String = "white"

    var memory: Int = 0

    var volumn: Int = 0

 

    fun upMemory(n: Int) {

        memory += n

    }

 

    fun upVolumn(n: Int) {

        volumn += n

    }

 

    fun downVolumn(n: Int) {

        volumn -= n

    }

 

    fun setColor(s: String) {

        color = s

    }

 

}   

저장시 파일명

저장 파일명은 클래스 명과 달라도 상관없습니다.

MP3Player.kt

MP3.kt

 

 

 

 

'Development > Kotlin' 카테고리의 다른 글

Java vs Kotlin - DataType  (0) 2019.03.15
Kotlin 조건삼항연산자(No Support)  (0) 2019.03.09
Kotlin - 클래스 정의  (0) 2019.03.03
Kotlin - 함수 선언  (0) 2019.03.03
변수 선언 - Assign-once 변수, Mutable 변수  (0) 2019.03.03
Kotlin Night 2019 서울 - 2019년 04월 08일  (0) 2019.03.01
Posted by codedragon codedragon

댓글을 달아 주세요


 

Kotlin - 함수 기본 형식

·    fun 키워드를 사용하여 함수를 정의합니다.

·       매개변수에는 var, val 선언할 없습니다.

·       매개변수는 기본으로 val 적용됩니다.

·       함수 선언 부분에 콜론(:)으로 구분해서 함수의 반환 타입을 명시합니다.


 

 

접근제한자 fun 함수명( 매개변수: 입력타입, ...) : 반환타입  //함수 헤더

{ //함수의 시작

    수행 구문

    수행 구문

    수행 구문

return 반환값

} //함수의 종료

 

 

구분

설명

접근 제한자

해당 함수에 접근할 있는 범위를 명시합니다.

fun

함수는 fun이라는 키워드로 메소드임을 명시합니다.

반환 타입

(return type)

함수가 모든 작업을 마치고 반환하는 값의 데이터의 타입을 명시합니다.

 

함수명

함수를 호출하기 위한 이름을 명시합니다.

매개변수 목록(parameters)

함수 호출 시에 전달되는 인수의 값을 저장할 변수들을 명시합니다.

수행구문

(구현부)

함수의 고유 기능을 수행하는 명령문의 집합입니다.

 

 

'Development > Kotlin' 카테고리의 다른 글

Kotlin 조건삼항연산자(No Support)  (0) 2019.03.09
Kotlin - 클래스 정의  (0) 2019.03.03
Kotlin - 함수 선언  (0) 2019.03.03
변수 선언 - Assign-once 변수, Mutable 변수  (0) 2019.03.03
Kotlin Night 2019 서울 - 2019년 04월 08일  (0) 2019.03.01
Any vs Any?  (0) 2019.02.28
Posted by codedragon codedragon

댓글을 달아 주세요


 

변수 선언

·         val 또는 var 키워드를 사용하여 변수를 선언합니다.

·         코틀린에서 변수는 프로퍼티(property) 가질 있습니다.

·         변수 선언시 변수명을 먼저 입력하고 뒤에 콜론(:) 구분자로 타입과 값을 입력합니다.

·         변수 타입을 지정할 있으며 타입을 지정하지 않을 경우 타입추론(알아서 값을 유추해 값에 맞는 타입을 적용합니다) 지원합니다.

 

 

val | var 변수명:타입 =

val | var 변수명 =

 

 

 

구분

설명

val

·         value

·         Assign-once 변수

·         Immutable 변수

·         (상수형 변수)

·         읽기만 가능한 프로퍼티

·         초기화하면 더는 변경할 없습니다.

·         Val cannot be reassigned

·         const (C 언어)

·         final (Java 언어)

var

·         variable

·         Mutable 변수

·         변수

·         읽기/쓰기 가능한 프로퍼티

·         초기화후 언제든지 변경할 있습니다.

 

 

val data1 = 100

var data2 = 200

 

 

 

'Development > Kotlin' 카테고리의 다른 글

Kotlin - 클래스 정의  (0) 2019.03.03
Kotlin - 함수 선언  (0) 2019.03.03
변수 선언 - Assign-once 변수, Mutable 변수  (0) 2019.03.03
Kotlin Night 2019 서울 - 2019년 04월 08일  (0) 2019.03.01
Any vs Any?  (0) 2019.02.28
init block  (0) 2019.02.23
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

Kotlin Night 2019 서울 - 2019 04 08

2019 04 08 () 오후 06:00 - 오후 10:00

 

http://bit.ly/2ND7uYo


 


'Development > Kotlin' 카테고리의 다른 글

Kotlin - 함수 선언  (0) 2019.03.03
변수 선언 - Assign-once 변수, Mutable 변수  (0) 2019.03.03
Kotlin Night 2019 서울 - 2019년 04월 08일  (0) 2019.03.01
Any vs Any?  (0) 2019.02.28
init block  (0) 2019.02.23
Any 타입, kotlin.Any  (0) 2019.02.18
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 2. 28. 16:43

Any vs Any? Development/Kotlin

 

 

 

Any vs Any?

Any타입의 데이터를 Any?타입 변수에 저장할 있지만 Any?타입의 데이터를 Any타입의 변수에는 저장할 없습니다.


 




'Development > Kotlin' 카테고리의 다른 글

변수 선언 - Assign-once 변수, Mutable 변수  (0) 2019.03.03
Kotlin Night 2019 서울 - 2019년 04월 08일  (0) 2019.03.01
Any vs Any?  (0) 2019.02.28
init block  (0) 2019.02.23
Any 타입, kotlin.Any  (0) 2019.02.18
Kotlin - 배열객체의 멤버 호출  (0) 2019.02.12
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 2. 23. 08:46

init block Development/Kotlin


 

init block

·       주요 생성자의 value-parameter property-parameter 사용하여 멤버를 초기화하는 용도로 사용합니다.

·       멤버 선언 전에 init블럭에서 초기화할 없습니다.

 

 

class 클래스명 {

init {

// 초기화 코드

}

}

 

 


'Development > Kotlin' 카테고리의 다른 글

Kotlin Night 2019 서울 - 2019년 04월 08일  (0) 2019.03.01
Any vs Any?  (0) 2019.02.28
init block  (0) 2019.02.23
Any 타입, kotlin.Any  (0) 2019.02.18
Kotlin - 배열객체의 멤버 호출  (0) 2019.02.12
Kotlin - Loop control  (0) 2019.02.07
Posted by codedragon codedragon

댓글을 달아 주세요



Any 타입

·       코틀린에서는 Any 타입을 제공합니다.

·       JAVA Object 타입처럼 모든 객체의 상위객체가 Any 입니다.

·       Any 타입은 컴파일시 Object 변환됩니다

·       Any 타입에는 null 들어갈  없습니다따라서 null 들어가야하는 곳에는 Any? 타입을 사용합니다.

 

 

 

 

kotlin.Any

·       최상위 클래스

·       코틀린의 모든 클래스는 Any클래스를 상속받고 있습니다.

 

 


'Development > Kotlin' 카테고리의 다른 글

Any vs Any?  (0) 2019.02.28
init block  (0) 2019.02.23
Any 타입, kotlin.Any  (0) 2019.02.18
Kotlin - 배열객체의 멤버 호출  (0) 2019.02.12
Kotlin - Loop control  (0) 2019.02.07
Kotlin - 프로퍼티(Property)  (0) 2019.02.01
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

배열객체의 멤버 호출

연산자 함수와 프로퍼티를 통해 요소값의 참조 설정이 가능합니다.

 

 

get()

특정 인덱스의 특정 값을 리턴합니다.

 

operator fun get(index: Int): T

 

get() 인덱스 연산자 [] 호출할 있습니다.

배열명.get(인덱스)

obj.get(1)

obj[1]

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/get.html

 

 

 

first()

해당 배열의 첫번째 요소를 반환합니다.

배열명.first()

 

 

 

last()

해당 배열의 마지막 요소를 반환합니다.

배열명.last()

 

 

 

set()

특정 인덱스의 특정 값을 설정합니다.

 

 

operator fun set(index: Int, value: T)

 

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/set.html

 

 

set() 인덱스 연산자 [] 호출할 있음

배열명.get(인덱스, )

obj.set(1, 1004)

obj[1] = 1004

 

 

 

 

joinToString()

배열의 요소를 해당 구분자로 나눠진 문자열로 반환해 줍니다.

fun <T> Array<out T>.joinToString(

    separator: CharSequence = ", "

    prefix: CharSequence = ""

    postfix: CharSequence = ""

    limit: Int = -1

    truncated: CharSequence = "..."

    transform: (T) -> CharSequence = null

): String

 

 

http://bit.ly/2OBrw93

 

 

 

 

fill()

·       해당 element 요소를 fromIndex 부터 toIndex까지 채웁니다.

·       toIndex 요소는 포함되지 않습니다.

 

fun <T> MutableList<T>.fill(value: T)

 

 

http://bit.ly/2S7K7rr

 

 

 

 

 

.size

Java에서는 .length 사용했지만

Kotlin에서는 .size 사용하여 해당 배열의 크기를 반환합니다.

println(obj.size)

 

 

 

 

.lastIndex

배열의 마지막요소의 인덱스를 반환합니다.

println(obj.lastIndex)

 

 

 

 

 

.indices

해당 배열의 인덱스 범위를 range 반환합니다.

/**

 * Returns the range of valid indices for the array.

 */

public val <T> Array<out T>.indices: IntRange

    get() = IntRange(0, lastIndex)

 

 

println(array.indices)

0..3

 

 

 

 


'Development > Kotlin' 카테고리의 다른 글

init block  (0) 2019.02.23
Any 타입, kotlin.Any  (0) 2019.02.18
Kotlin - 배열객체의 멤버 호출  (0) 2019.02.12
Kotlin - Loop control  (0) 2019.02.07
Kotlin - 프로퍼티(Property)  (0) 2019.02.01
Kotlin - 내부 클래스(Inner Class)의 구성 형식  (0) 2019.01.27
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

Kotlin - Loop control

Java에서와 동일한 break, continue 통해 반복문을 제어할 키워드를 제공합니다.

 

 

 

 

 

Java - Loop control

http://codedragon.tistory.com/8012

 


'Development > Kotlin' 카테고리의 다른 글

Any 타입, kotlin.Any  (0) 2019.02.18
Kotlin - 배열객체의 멤버 호출  (0) 2019.02.12
Kotlin - Loop control  (0) 2019.02.07
Kotlin - 프로퍼티(Property)  (0) 2019.02.01
Kotlin - 내부 클래스(Inner Class)의 구성 형식  (0) 2019.01.27
Kotlin - 배열(Array)  (0) 2019.01.20
Posted by codedragon codedragon

댓글을 달아 주세요