Option 모델의 이점
if (v == null) {
// nullのときの処理
} else
// null以外のときの処理
}
이렇게 쓰면 가장 주목하고 싶은 것null以外のとき
이 뒤에 나타나 "아직?"라는 심정을 드러냈다.보통은 가치가 있을 때 처리하는 것이 기본 노선이고,null일 때는 대체 노선이겠죠?그러니까...
if (v != null) {
// null以外のときの処理
} else {
// nullのときの処理
}
이렇게 써도 된다고 했지만 null
이런 글이 먼저 나오는 것을 좋아하지 않는다.이 점에서 옵티콘형을 사용한다면...
val v = Some(2)
val r = v.map { _ + 1 }.getOrElse(0)
처럼 먼저 기본 뿌리의 값으로 쓸 때의 뿌리를 쓴 다음에 대체 뿌리가 되지 않았을 때의 뿌리를 쓴다.여분의 정보.포내포를 나타낼 때도...
for {
x <- v.orElse(Some(0))
y <- ...
} yield (x, y)
처럼 확실히 가치가 있는 상태로 통일된 후에 처리할 수도 있다(당연히getOrElse
.옵티온형을 사용한 장점은 null 안전이지만 기본 노선과 대체 노선은 관심 순서대로 배열해야 한다고 생각한다.
Reference
이 문제에 관하여(Option 모델의 이점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/magnolia/articles/c82114f02271494c43ed텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)