[코딩] 배우는것/Swift
[Swfit] Optional 해결방법
JabCho
2020. 2. 8. 00:41
728x90
반응형
SMALL
앞서 optional이 왜 일어나는지 알아봤다.(nil때문..)
그럼 해결방법은?
간단하게 말하자면 강제 언랩핑(Forced Unwrapping) , 옵셔널 바인딩(Optional Binding) , 옵셔널 체이닝(Optional Chaining)이 있다.
1. 강제 언랩핑(Forced Unwrapping)
코드설명 <<
test : 똑똑똑 값이 Int입니까?? 그럼 받아들이겠습니다.
(사실 nil이었다.)
res : 나는 Int만 받아들인다. test가 무슨형인지는 나랑 상관없어! 깨부셔서 집어넣어!
그래서 결과 : 아무것도 안뜬다 하지만 런타임 에러가 뜰 수 있기 때문에 ! 는 함부로 쓰면 안된다.
2. 옵셔널 바인딩(Optional Binding)
(숫자있는ver.)
(nil값있는ver.)
(응용ver. 어자피 같은 의미로 쓰인거 그냥 똑같은 이름으로 바꿔줬다. 알아보기 쉽게.)
3. 옵셔널 체이닝(Optional Chaining)
옵셔널 체이닝은 이름에서 느낄 수 있는 것처럼 연속적으로 확인을 하는 것이다.
https://yagom.github.io/swift_basic/contents/16_optional_chaining/
옵셔널 체이닝
야곰의 스위프트 기본 문법 강좌입니다.
yagom.github.io
이곳에서 잘 설명되어 있다.
옵셔널 처리 방법은 대체로 이렇게 3가지를 많이 사용한다.
옵셔널이 없으면 좋겠지만, 사용하게 된다면, 옵셔널 바인딩과 강제 언래핑을 사용한다.
그때 그때 적절한것을 사용하면 된다.
728x90
반응형
LIST