当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java OptionalInt ifPresentOrElse()用法及代码示例


ifPresentOrElse(java.util.function.IntConsumer,java.lang.Runnable)方法可帮助我们执行此OptionalInt对象的值的指定IntConsumer操作。如果此OptionalInt中不存在值,则此方法执行给定的基于空的Runnable emptyAction,作为第二个参数传递

用法:

public void ifPresentOrElse(IntConsumer action,
                            Runnable emptyAction)

参数:此方法接受两个参数:


  • action:如果存在值,则是对此Optional所执行的操作。
  • emptyAction:如果不存在任何值,这是要执行的基于空的操作。

返回值:此方法不返回任何内容。

异常:如果存在一个值并且给定的操作为null,或者不存在任何值并且给定的基于空的操作为null,则此方法抛出NullPointerException。

以下示例程序旨在说明ifPresentOrElse()方法:
示例1:

// Java program to demonstrate 
// OptionalInt.ifPresentOrElse() method 
  
import java.util.OptionalInt; 
  
public class GFG { 
  
    public static void main(String[] args) 
    { 
  
        // create a OptionalInt 
        OptionalInt opint = OptionalInt.of(12); 
  
        // apply ifPresentOrElse 
        opint.ifPresentOrElse( 
            (value) 
                -> { System.out.println("Value is present, its: "
                                        + value); }, 
            () 
                -> { System.out.println("Value is empty"); }); 
    } 
}

输出:

Value is present, its: 12

示例2:

// Java program to demonstrate 
// OptionalInt.ifPresentOrElse method 
import java.util.OptionalInt; 
  
public class GFG { 
  
    public static void main(String[] args) 
    { 
  
        // create a OptionalInt 
        OptionalInt opint = OptionalInt.empty(); 
  
        // apply ifPresentOrElse 
        opint.ifPresentOrElse( 
            (value) 
                -> { System.out.println("Value is present, its: "
                                        + value); }, 
            () 
                -> { System.out.println("Value is empty"); }); 
    } 
}

输出:

Value is empty

参考文献: https://docs.oracle.com/javase/10/docs/api/java/util/OptionalInt.html#ifPresentOrElse(java.util.function.IntConsumer, java.lang.Runnable)



相关用法


注:本文由纯净天空筛选整理自AmanSingh2210大神的英文原创作品 OptionalInt ifPresentOrElse() method in Java with examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。