문제
문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 100
- my_string에는 숫자가 한 개 이상 포함되어 있습니다.
- my_string은 영어 소문자 또는 0부터 9까지의 숫자로 이루어져 있습니다.
입출력 예
코드
class Solution {
fun isNum(str: String): Boolean{
return try{
str.toInt()
true
}catch(e: NumberFormatException){
false
}
}
fun solution(my_string: String): ArrayList<Int> {
var answer = ArrayList<Int>()
for(i in 0 until my_string.length){
if(isNum(my_string[i].toString())){
answer.add(my_string[i].toString().toInt())
}
}
answer.sort()
return answer
}
}
기억하고 싶은 부분
- 숫자인지 판별
fun isNum(str: String): Boolean{
return try{
str.toInt()
true
}catch(e: NumberFormatException){
false
}
}
판별을 원하는 문자열에 toInt() 를 적용시킨다.
만약 해당 문자열이 숫자로 변경된다면 true를 반환할 것이고
숫자로 변경될 수 없다면 에러를 뿜을 것이다.
그 에러의 이름은 NumberFormatException으로 위의 코드와 같이 예외처리를 해준다 false를 반환하도록 !
https://school.programmers.co.kr/learn/courses/30/lessons/120850
'Algorithm > kotlin' 카테고리의 다른 글
[프로그래머스/Kotlin] 2차원으로 만들기 (Lv. 0) (2) | 2024.02.09 |
---|---|
[프로그래머스/Kotlin] 배열 회전시키기 (Lv. 0) (0) | 2024.02.07 |
[프로그래머스/Kotlin] 인덱스 바꾸기 (Lv. 0) (0) | 2024.02.07 |
[프로그래머스/Kotlin] 대문자와 소문자 (Lv. 0) (0) | 2024.02.07 |
[프로그래머스/Kotlin] 중복된 숫자 개수 (Lv. 0) (0) | 2024.02.06 |