-1
두 가지 유형의 대수 데이터 형식 (ADT)이 있습니다. 스칼라에서 Option[T]
또는 자바에서 Optional<T>
인 경우, 이것이 합계 유형 또는 제품 유형의 예입니까?어떤 유형의 대수 데이터 형식이 Option [T] 또는 Optional입니까? <T>
두 가지 유형의 대수 데이터 형식 (ADT)이 있습니다. 스칼라에서 Option[T]
또는 자바에서 Optional<T>
인 경우, 이것이 합계 유형 또는 제품 유형의 예입니까?어떤 유형의 대수 데이터 형식이 Option [T] 또는 Optional입니까? <T>
하스켈에서 Option[T]
유형을 정의하면 합계 유형이라는 것을 알 수 있습니다. 유형 Option t
의
data Option t = None | Some t
값은 두 가지 중 하나 일 수 있습니다 모두 유형을
None
Some t
그래서 Option[T]
및 Optional<T>
T
후 1보다 가능한 추가 값 (None
). Abusing the algebra of algebraic data types - why does this work?
당신이 그것을 밖으로 알아낼 수 있습니다 확신 해요 :이 질문을 참조 이유
보고 :
재미를 위해, 우리는 또한 대수 방정식이 ADT를 번역 할 수 있습니다 'Optional'이'T' 또는'T'가 아닌 것으로 생각한다면. –
molbdnilo
괜찮 았기 때문에 –