앱 개발/Algorithm
substring, isDigit (문자열을 정수로 바꾸기)
lionbae
2024. 2. 5. 15:02
< substring >
문자열에서 일부분을 추출하는 데 사용된다. 주어진 인덱스나 범위에 해당하는 부분 문자열을 반환한다. 인덱스나 범위를 사용하여 부분 문자열을 추출하는 다양한 오버로드를 제공하므로 문자열 작업을 효과적으로 수행할 수 있다.
val originalString = "Hello, World!"
// 인덱스를 사용
val subString1 = originalString.substring(7)
println(subString1) // "World!"
// 범위를 사용
val subString2 = originalString.substring(0..4)
println(subString2) // "Hello"
// 시작 인덱스와 끝 인덱스를 사용
val subString3 = originalString.substring(7, 12)
println(subString3) // "World"
< isDigit >
문자가 10진수 숫자인지 여부를 확인한다. 주어진 문자가 0부터 9까지의 숫자 중 하나인지 여부를 불리언 값으로 반환한다. 주로 문자열에서 숫자를 추출하거나 입력값의 유효성을 검사하는 작업 등에서 활용된다.
println('5'.isDigit()) // true
println('A'.isDigit()) // false
----------------------------------------------------------------------------------------------------------------------------
< 문제 18번 >
< solution >
class Solution {
fun solution(s: String): Int {
require(s.length in 1..5)
require(!s.startsWith("0"))
// 문자열 s의 첫번째 인덱스가 + 또는 -이면 두번째 인덱스부터 추출
val str = if (s[0] == '+' || s[0] == '-') s.substring(1) else s
// 문자열 str이 모두 숫자로 되어있는지 확인
if (str.all { it.isDigit() }) {
return if (s[0] == '-') -str.toInt() else str.toInt()
} else {
throw IllegalArgumentException()
}
}
}
728x90