1. 문제 설명 (📎Link)
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.
2. 제한사항
s의 길이는 1 이상 5이하입니다.
s의 맨앞에는 부호(+, -)가 올 수 있습니다.
s는 부호와 숫자로만 이루어져있습니다.
s는 "0"으로 시작하지 않습니다.
📝 문제
func solution(_ s:String) -> Int {
return 0
}
💻 내가 푼 방법(테스트 성공)
1) 오류 발생
func solution(_ s:String) -> Int {
var result = Int(s)
return result
}
→ result 가 Int? 타입이라 강제언래핑 시켜줘야 한다고 함
![](https://blog.kakaocdn.net/dn/lbsvl/btsH86KM6HI/ZHvgPYxUDkeP6iDQzZCLB1/img.png)
![](https://blog.kakaocdn.net/dn/bUb1Kp/btsH8mVdKSB/eSCXJwvprPrhhraBPkVg30/img.png)
2) 수정
func solution(_ s:String) -> Int {
var result = Int(s)
return result!
}
🔎 의문점과 공부한 것
1. 강제언래핑 시 nil 값이 반환되면 런타임 오류가 발생할 수 있으므로 아래와 같이 처리하면 더 안전하다고 한다
1) 옵셔널 바인딩 설정
func solution(_ s:String) -> Int {
if let result = Int(s) {
return result
} else {
// 변환에 실패했을 때 적절한 기본값을 반환하거나 예외 처리를 할 수 있습니다.
return 0
}
}
2) 기본값 설정
func solution(_ s:String) -> Int {
let result = Int(s) ?? 0
return result
}
'🍎 Swift > Programmers' 카테고리의 다른 글
[👾 Programmers] 20. 정수 내림차순으로 배치하기(업데이트 필요) (0) | 2024.06.24 |
---|---|
[👾 Programmers] 19. 정수 제곱근 판별 (0) | 2024.06.23 |
[👾 Programmers] 17. 자연수 뒤집어 배열로 만들기 (0) | 2024.06.21 |
[👾 Programmers] 16. x만큼 간격이 있는 n개의 숫자 (0) | 2024.06.21 |
[👾 Programmers] 15. 나머지가 1이 되는 수 찾기 (0) | 2024.06.19 |