코틀린 object와 class의 차이

코틀린에서 클래스를 정의할 때는 class와 object가 사용되는데 object 키워드를 사용하여 클래스를 정의할 경우 객체를 싱글톤(Singleton) 패턴으로 한 번만 생성하여 메모리 소요를 줄일 수 있게 해준다.

class Member(name : String) {
    var name = ""
    
    init {
    	this.name = name
    }
}


object memberRepository {

    private val members = mutableListof<Member>()
    
}

fun main() {

    var member = Member("루니")
    
    memberRepository.members.add(member)

}

.split()

.split()은 문자열을 특정 문자를 기준으로 자를 때 많이 사용합니다 .split()은 인자로 기준이 되는 문자열을 넣어주고 'limit' 라는 인자를 통해 기준이 되는 문자를 통해 몇 개의 인덱스를 생성할지 정할 수 있습니다.

fun main() {

	val words = "ABC/DEF/GHI/JKL/NMO"
    
    val wordsBits = command.split("/")
    
    for (word in wordsBits) {
    	println(word)
    }
    
    // 실행 결과 모든 '/'를 기준으로 잘라서 배열에 넣어준다.
    ABC
    DEF
    GHI
    JKL
    NMO
    
}

* 위처럼 limit 인자를 적지 않으면 default 값으로 0이 들어가며 기준이 되는 문자열로 모두 잘라냅니다.

fun main() {

	val words = "ABC/DEF/GHI/JKL/NMO"
    
    val wordsBits = command.split("/", limit=2)
    
    for (word in wordsBits) {
    	println(word)
    }
    
    // 실행 결과 '/'를 기준으로 두 개의 인덱스의 배열을 생성한다.
    ABC
    DEF/GHI/JKL/NMO
    
}
fun main() {

	val words = "ABC/DEF/GHI/JKL/NMO"
    
    val wordsBits = command.split("/", limit=3)
    
    for (word in wordsBits) {
    	println(word)
    }
    
    // 실행 결과 모든 '/'를 기준으로 잘라서 배열에 넣어준다.
    ABC
    DEF
    GHI/JKL/NMO
    
}

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

[Kotlin] object와 class  (0) 2021.04.29
[Kotlin] .contains()  (0) 2021.04.23
[Kotlin] 조건문 when  (0) 2021.04.23
[Kotlin] 코틀린 MutableList  (0) 2021.04.19
[Kotlin] 대문자, 소문자 변환 .toUpperCase(), .toLowerCase()  (0) 2021.04.19

+ Recent posts