【问题标题】:what is the difference between either and Option in dartz?dartz 中的 any 和 Option 有什么区别?
【发布时间】:2021-07-09 06:18:40
【问题描述】:

我想了解 dartz,但文档不够清晰。 我需要在 dartz 中了解两者之间的区别吗?

abstract class Option<A> implements TraversableMonadPlusOps<Option, A>

VS

abstract class Either<L, R> implements TraversableMonadOps<Either<L, dynamic>, R> 

【问题讨论】:

  • 您是指Either 和Option 之间的区别吗? “一些”从何而来?
  • 是的,很抱歉!我已经更新了问题@nvoigt

标签: flutter dart dartz


【解决方案1】:

嗯,Option 类型通常是一个保存类型化值或什么都不保存的类型。

例如,如果您想获取整数列表的第一个整数,那可能是 Option&lt;int&gt;,因为它可以是 int 或 nothing,以防列表为空。但不能是字符串。

Either 类型就像名字所说的那样......要么是一个,要么是另一个。它可以完全是两种不同的类型。 Either&lt;int, string&gt; 将有一个 int 或 一个字符串。从不两者兼而有之。从来没有。一个或另一个。

例如,函数式 ParseInt 方法可能会返回 Either&lt;int, string&gt;,因为它会返回有效的 int 或错误消息。

【讨论】:

猜你喜欢
  • 2017-10-19
  • 1970-01-01
  • 2019-06-07
  • 2015-07-12
  • 2019-11-19
  • 2022-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多