为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用自己的化简方法对不同的列表

如何使用自己的化简方法对不同的列表

子衿沉夜 2022-09-28 09:54:39
不同的方法应调用具有空列表的 reduce 方法作为标识。如何使用累加器来检查旧列表的值是否已在新列表中。@Overridepublic <R> R reduce(R identity, BiFunction<R, ? super E, R> accumulator) {    for (E value : this) {        identity = accumulator.apply(identity, value);    }    return identity;}@Overridepublic List<E> distinct() {    List<E> list = new LinkedList<E>();    return reduce(list, (a, b) -> );}
查看完整描述

1 回答

?
长风秋雁

TA贡献1757条经验 获得超7个赞

您应该使用 来检查某个元素是否在列表中。如果是,请不要将其添加到累加器中,否则,请添加它。contains


return reduce(list, (acc, element) -> {

    if (!acc.contains(element)) {

        acc.add(element);

    }

    return acc;

});


查看完整回答
反对 回复 2022-09-28
  • 1 回答
  • 0 关注
  • 77 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信