【问题标题】:Create Ord from existing Ord从现有 Ord 创建 Ord
【发布时间】:2023-03-11 18:38:02
【问题描述】:

如果我有F<A, B>,如何将现有的Ord<A> 转换为Ord<B>

例如:

public class Foo {
    public String name;
}

F<Foo, String> f = new F<Foo, String>() {
    public String f(Foo foo) {
        return foo.name;
    }
};

Ord<String> stringOrd = Ord.stringOrd;

Ord<Foo> fooOrd = ???

【问题讨论】:

    标签: functional-java


    【解决方案1】:

    答案就在 API 中。 comap:

    Ord<Foo> fooOrd = Ord.stringOrd.comap(new F<Foo, String>() {
        public String f(Foo foo) {
            return foo.name;
        }
    });
    

    【讨论】:

    • 对于Ord.intOrdOrd.intOrd.contramap(f -&gt; f.getInt())
    猜你喜欢
    • 2020-05-01
    • 2012-05-31
    • 2021-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-24
    • 1970-01-01
    相关资源
    最近更新 更多