【问题标题】:How do I find the smallest value in a List<E>?如何找到 List<E> 中的最小值?
【发布时间】:2021-05-19 15:13:13
【问题描述】:

我尝试过这种方式,但我得到的只是这个错误消息:java:不兼容的类型:E 无法转换为 int

public static<E extends Comparable<?superE>> Optional<E> min(List<E>list) {
     int result = reduce(list, 0, (a, l) -> a.compareTo((int)l) <= 0 ? a:(int)l);
     return (Optional<E>) Optional.of(result);
}

我真的不知道如何解决这个问题。

【问题讨论】:

    标签: java list generics lambda


    【解决方案1】:

    这样写会容易得多:

    return list.stream().min(Comparator.comparing(Function.identity()));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多