📜  Java中的 DoubleStream max() 示例

📅  最后修改于: 2022-05-13 01:54:36.408000             🧑  作者: Mango

Java中的 DoubleStream max() 示例

Java 8 中的Java .util.stream.DoubleStream处理原始双精度。它有助于以一种新的方式解决数组中的最大值,数组中的最小值,数组中所有元素的总和以及数组中所有值的平均值等问题。 DoubleStream max()返回一个描述此流的最大元素的 OptionalDouble,如果此流为空,则返回一个空的可选项。

句法 :

OptionalDouble() max()

Where, OptionalDouble is a container object which 
may or may not contain a double value.

笔记 :

  1. 与数值运算符不同,此方法认为负零严格小于正零。
  2. 这是减少的一种特殊情况。

示例 1:

// Java code for DoubleStream max()
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // creating a stream
        DoubleStream stream = DoubleStream.of(-9.5, -18.6, 54.3,
                                            8.5, 7.4, 14.2, 3.9);
  
        // OptionalDouble is a container object
        // which may or may not contain a
        // double value.
        OptionalDouble obj = stream.max();
  
        // If a value is present, isPresent() will
        // return true and getAsDouble() will
        // return the value
        if (obj.isPresent()) {
            System.out.println(obj.getAsDouble());
        }
        else {
            System.out.println("-1");
        }
    }
}
输出:
54.3

示例 2:

// Java code for DoubleStream max()
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // OptionalDouble is a container object
        // which may or may not contain a
        // double value.
        OptionalDouble obj = DoubleStream.empty()
                                 .max();
  
        // If a value is present, isPresent() will
        // return true and getAsDouble() will
        // return the value
        if (obj.isPresent()) {
            System.out.println(obj.getAsDouble());
        }
        else {
            System.out.println("-1");
        }
    }
}
输出:
-1