한 걸음 두 걸음

Kotlin ] 06 Package, Return and Jumps 본문

Language/Kotlin

Kotlin ] 06 Package, Return and Jumps

언제나 변함없이 2019. 5. 20. 09:02
반응형

Package

Package 이름.pack이름

fun 함수(){}

를 다른 곳에서 가져다가 쓰려면

import 이름.pack이름;

fun A(){
    함수()
}

처럼 import해서 가져다쓰면 됩니다.

여기서 코틀린은 패키지를 명세하지 않아도 이름이 없는 기본 패키지에 포함되게 사용할 수 있습니다.(JAVA와 다른 부분입니다.)

함수 이름이 중복되는 경우,

import nar.Bar
import bar.Bar as ali2 //이런식으로 별명을 지어줌으로써 중복을 피할 수 있습니다

Label : break and return and continue

이중for문이 있을 떄
for(){
for(){
break;
}
}
를 하면 내부에 있는 for문만 탈출하는데
loop@를 사용하면 외부에 있는 for문까지 탈출할 수 있습니다.
이런식으로 사용하는 것을 두고 레이블이라하며,
식별자@ 형태로 사용합니다. (ex) label@, abc@ ...

마찬자기로 continue 및 return 등에 다양하게 응용하여 사용할 수 있습니다.
(return의 경우 람다 함수를 사용했을 때 return시 레이블을 사용하여 람다 위의 함수가 반환되어 중단되는 것을 막을 수 있습니다.)

fun foo3(){
    var = ints = listOf(0,1,2,3)
    ints.forEach label@{
        if(it == 1) return @label    //forEach 내부로 생성한 람다 함수만 반환되게 합니다.
        print(it)
    }
    print("end")
}

값도 같이 반환해야하는 경우 return @label "zero" 방식으로 레이블 뒤에 리턴값도 같이 써주변 됩니다 ㅎㅎ

반응형

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

Kotiln 08 ] 상속  (0) 2019.05.20
Kotlin 07 ] 클래스와 상속  (0) 2019.05.20
Kotlin 코틀린 ] 05 Control Flow  (0) 2019.05.20
03. kotlin basic types  (0) 2019.04.28
02 코틀린 기본 문법  (0) 2019.04.28