Kotlin에서 표준 입력
문법 등은 다른 기사에 정중하게 정리되어 있으므로 그쪽을 참조하십시오
시작하자 Kotlin (기본편)
지적 등의 코멘트로 받을 수 있으면 다행입니다.
입력
한 줄에 하나
readLine()
사용
val s = readLine() //String
val n = readLine()!!.toInt() // Int
readLine()
는 입력을 문자열로 반환하는 함수이므로 숫자로 취급하는 경우 별도의 캐스트를 넣으십시오 (double 등도 동일).
덧붙여서 Integer.parseInt()
로 캐스팅하는 방법도 있습니다. 약간 여기가 빠릅니다.
대량의 수치의 입력을 받는 경우는 이쪽을 사용하는 것도 좋을지도 모릅니다
↓"0"을 수치로 캐스트했을 때의 처리 속도의 차이( measureNanoTime
함수로 측정)
한 줄에 여러
a b c
와 같이 공백으로 구분된 입력입니다.split()
사용
val s = readLine()!!.split(" ") // List<String>
val n = readLine()!!.split(" ").map(String::parseInt) // List<Int>
split()
는 Python 등과 달리 공백 문자로도 인수가 필요한 점에 유의하십시오
각 값의 캐스트는 map()
에 parseInt
를 건네주는 것으로 간결하게 할 수 있습니다
이대로는 불편하므로 각 값을 변수에 뿌리지만 여기에서 Kotlin의 편리한 기능을 이용할 수 있습니다.
val (s1, s2, s3) = readLine()!!.split(" ") // String
val (n1, n2, n3) = readLine()!!.split(" ").map(String::parseInt) // Int
변수명을 괄호로 묶어 복수 지정하는 것으로, 배열의 각 값이 차례로 대입됩니다
여러 줄에 하나
a
b
c
와 같이 줄 바꿈으로 구분 된 패턴입니다.
List 생성시에 블록을 붙이는 것으로 값의 대입을 동시에 실시할 수 있습니다
val s = List(n) { readLine() } // List<String>
val num = List(n) { readLine()!!.toInt() } // List<Int>
물론 상기에서 소개한 복수 변수에의 대입도 가능합니다
val (s1, s2, s3) = List(n) { readLine() } // String
val (n1, n2, n3) = List(n) { readLine()!!.toInt() } // Int
여러 줄에 여러
a b c
d e f
g h i
같다.
다차원 배열에 저장하는 형태로 합니다.
val s = List(n) { // List<List<String>>
readLine()!!.split(" ")
}
val num = List(n) { // List<List<Int>>
readLine()!!.split(" ").map(String::parseInt)
}
Reference
이 문제에 관하여(Kotlin에서 표준 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yotu/items/44013287fabd8be75aa1
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
val s = readLine() //String
val n = readLine()!!.toInt() // Int
val s = readLine()!!.split(" ") // List<String>
val n = readLine()!!.split(" ").map(String::parseInt) // List<Int>
val (s1, s2, s3) = readLine()!!.split(" ") // String
val (n1, n2, n3) = readLine()!!.split(" ").map(String::parseInt) // Int
a
b
c
val s = List(n) { readLine() } // List<String>
val num = List(n) { readLine()!!.toInt() } // List<Int>
val (s1, s2, s3) = List(n) { readLine() } // String
val (n1, n2, n3) = List(n) { readLine()!!.toInt() } // Int
a b c
d e f
g h i
val s = List(n) { // List<List<String>>
readLine()!!.split(" ")
}
val num = List(n) { // List<List<Int>>
readLine()!!.split(" ").map(String::parseInt)
}
Reference
이 문제에 관하여(Kotlin에서 표준 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yotu/items/44013287fabd8be75aa1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)