函数式编程之-重新认识泛型(1) (2)

第二个law说存在两个函数f和g,依次Select这两个函数得到的结果,跟先把这两个函数组合起来,然后Select组合好的函数得到的结果是一致的。

函数式编程之-重新认识泛型(1)

[Theory] [InlineData("")] [InlineData("foo")] [InlineData("bar")] public void OptionalObeysSecondFunctorLaw(string value) { Func<string, int> f = s => s.Length; Func<int, bool> g = i => i > 0; Func<string, bool> composed = s => g(f(s)); var m = Optional.Some(value); Assert.Equal(m.Select(composed), m.Select(f).Select(g)); }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpgzgs.html