반응형

GDSC DJU동아리에 Beginner Member로 소속되어 있고 Kotlin Study에 참여하여 활동을 하고 있습니다! 

Kotlin Study의 Lead분께서 상품을 걸고 간단한 돌발 퀴즈를 내주셨습니다. 코틀린 문법들을 보고 넘어가기만 했는데 덕분에 직접 사용해보며 코틀린과 조금 더 친해질 수 있었던 것 같습니다.

문제

여기서 힌트로 주어진 1번과 2번에 문제의 의도가 담겨있었습니다!

1번 힌트에 나와있는 새롭게 나온 키보드의 입력을 받는 함수는 readlnOrNull() 이고

2번 힌트에 나와있는 String 이 null 혹은 빈칸인지 한번에 알 수 있는, Booleandmf Return하는 확장 함수는 isNullOrBlank() 입니다.

 

readlnOrNull()

readlnOrNull()은 Kotlin 1.6.0에서 표준 입력 처리를 위한 새로운 함수입니다.

간단하게 설명하자면 readLine() 과 동일한 기능을 한다고 보면될 것 같습니다.

readln()은 readLine()!! 과 동일한 기능을 합니다. 

 println()처럼 Line을 ln으로 통일하기위해 새롭게 함수를 도입한 것으로 보입니다. 전에 쓰이던 입력 함수들은 점진적으로 사용을 하지 않을 것으로 보입니다.

더 자세한 내용은 여기 에서 보실 수 있습니다.

isNullOrBlank()

isNullOrBlank()는 문자열이 null이거나 비어있거나(empty) 공백(" ")으로 가득찬 문자열일 때 true를 리턴하고 그렇지 않으면 false를 리턴해주는 확장 함수 입니다.

fun main(){
    val normal = "soopeach"
    val _null :String? = null
    val empty = ""
    val blank = "   "
	
    println(normal.isNullOrBlank()) // false 출력
    println(_null.isNullOrBlank()) // true 출력(null)
    println(empty.isNullOrBlank()) // true 출력(공백)
    println(blank.isNullOrBlank()) // true 출력(공백으로 가득찬 문자열)
}

isNullOrBlank는 위와 같이 사용할 수 있습니다!

과제 해결 코드

코틀린 답게! 입력값이 null 이거나 빈칸이면 "입력없음"을 출력하고, 아닐때는 입력값을 그대로 출력하면 됩니다.

fun main(){
    var inputData = readlnOrNull()
    if (!inputData.isNullOrBlank()) println("${inputData}") else println("입력없음")
}

readlnOrNull()을 사용하여 inputData를 입력받고 isNullOrBlank를 사용하여 null, empty 혹은 공백으로 만들어진 문자열인지 판별하여 null, empty 혹은 공백으로 만들어진 문자열이라면 "입력없음"을 출력하고 그렇지 않으면 입력된 값인 inputData를 출력합니다.

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기