![](/img/trans.png)
[英]How to extract Left or Right easily from Either type in Dart (Dartz)
[英]what is the difference between either and Option in dartz?
我想了解 dartz,但文档不够清楚。 我需要在 dartz 中找出两者之间的区别吗?
abstract class Option<A> implements TraversableMonadPlusOps<Option, A>
VS
abstract class Either<L, R> implements TraversableMonadOps<Either<L, dynamic>, R>
嗯,一个Option
类型通常是一个保存类型值或什么都不保存的类型。
例如,如果您想获取整数列表的第一个 integer,那可能是Option<int>
因为如果列表为空,它可以是 int 或什么都没有。 但它不能是字符串。
Either
类型就是名字所说的......要么是一个,要么是另一个。 它可以完全是两种不同的类型。 Either<int, string>
将有一个 int或一个字符串。 从不两者兼而有之。 从来没有。 要么之一。
例如,功能性 ParseInt 方法可能会返回Either<int, string>
,因为它将返回有效的 int 或错误消息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.