달력

12

« 2019/12 »

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


 

 

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

댓글을 달아 주세요


 

Kotlin - 프로퍼티(Property)

필드(Field) Getter & Setter 하나로 묶어놓은 것을 프로퍼티라고 합니다.

 

Property = Field + Getter&Setter

 

구분

설명

Field

자료를 저장 있는 (val) 변수(var

 

 

var name: String

 

 

Property

Field + Getter&Setter

 

 

class Student{

    var name: String

            get() // 자동 생성된 Getter

        {

            return field

        }

        set(value) // 자동 생성된 Setter

        {

            field = value

        }

       

 

    constructor(name: String)

    {

        this.name = name

       

    }

}

 

 

 

구분

샘플 코드

Property

var name: String

            get() // 자동 생성된 Getter

        {

            return field

        }

        set(value) // 자동 생성된 Setter

        {

            field = value

        }

Field

var name: String

Getter&Setter

get() // 자동 생성된 Getter

{

   return field

}

set(value) // 자동 생성된 Setter

{

   field = value

}

 

 


Posted by codedragon codedragon

댓글을 달아 주세요



 

 

Kotlin - 내부 클래스(Inner Class) 구성 형식

내부 클래스는 class앞에 inner 키워드로 정의할 있습니다.

 

class OuterClass {

//…

inner class InnerClass {

 

}

//

 

}

 

val outer = OuterClass()

val inner = outer.InnerClass()

var inner = OuterClass().InnerClass()

 

 

 

inner 클래스는 멤버이므로 외부클래스의 객체 생성없이 직접 객체 생성할 수 없습니다.

var inner = OuterClass.InnerClass()

ERROR: Constructor of inner class InnerClass can be called only with receiver of containing class

 

 

https://kotlinlang.org/docs/reference/nested-classes.html


 

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

 

Kotlin - 배열(Array)

·       컬렉션타입 하나로 배열은 Array 클래스로 표현합니다.

·       Array 클래스는 get(), set() 멤버함수와  size 프로퍼티 등을 가지고 있습니다.

 

 

 

class Array<T>

 

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

 

 

 

 

 

배열(Array)

http://codedragon.tistory.com/2048

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

 

STEP1 - 접근 가능 영역범위 (Kotlin)

안쪽에서 밖으로 확장하면서 이해하면 쉽습니다.

 

·       TOP-LEVEL에서 선언

·       클래스에서 선언

 

 

TOP-LEVEL에서 선언

public : (default)

모든 접근 허용

 

internal  :

같은 모듈에서는 접근 허용

 

protected :

상속선언 불가

 

private :

같은 파일 내부(.kt)에서만 허용

 

 

 

 

top-level 선언된 변수, 함수, 클래스를 다른 패키지에서 사용하려면 import 선언한   사용해야 합니다.

 

 

 

 

클래스에서 선언

public : (default)

모든 접근 허용

 

internal  :

같은 모듈에서는 접근 허용

 

protected :

클래스 상속관계 클래스들만 허용

 

private :

같은 클래스 내부에서만 허용

 

 

 

 

 


Posted by codedragon codedragon

댓글을 달아 주세요