List<BigDecimal> sydfList = new ArrayList<>(); 找到集合中的最大值和最小值

avatar
作者
猴君
阅读量:1

To find the maximum and minimum values in the sydfList which contains BigDecimal objects, you can use Java 8 streams for a concise and efficient solution. Here’s how you can do it:

import java.math.BigDecimal; import java.util.ArrayList; import java.util.List;  public class Main {     public static void main(String[] args) {         List<BigDecimal> sydfList = new ArrayList<>();         sydfList.add(new BigDecimal("10.5"));         sydfList.add(new BigDecimal("8.2"));         sydfList.add(new BigDecimal("15.7"));         sydfList.add(new BigDecimal("6.4"));                  // Finding the maximum value         BigDecimal max = sydfList.stream()                                  .max(BigDecimal::compareTo)                                  .orElse(BigDecimal.ZERO);                  // Finding the minimum value         BigDecimal min = sydfList.stream()                                  .min(BigDecimal::compareTo)                                  .orElse(BigDecimal.ZERO);                  System.out.println("Maximum value: " + max);         System.out.println("Minimum value: " + min);     } } 

Explanation:

  1. Initialization: We initialize sydfList with BigDecimal objects.

  2. Finding Maximum Value:

    • We use stream() on sydfList to convert it into a stream of BigDecimal.
    • max() function is applied on the stream to find the maximum value.
    • BigDecimal::compareTo is used as the comparator to determine the ordering of BigDecimal objects.
    • orElse(BigDecimal.ZERO) ensures that if the stream is empty, we default to BigDecimal.ZERO.
  3. Finding Minimum Value:

    • Similarly, min() function is used to find the minimum value.
    • Again, BigDecimal::compareTo is used as the comparator.
    • orElse(BigDecimal.ZERO) handles the case where the stream is empty.
  4. Output: Finally, we print out the maximum and minimum values found in the list.

This approach leverages Java 8’s Stream API, which provides a functional approach to operate on collections, making the code concise and readable.

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!