📅  最后修改于: 2023-12-03 15:31:54.746000             🧑  作者: Mango
当我们需要判断一个可选的int值是否存在时,可以使用Java中的OptionalInt类。OptionalInt类是一个jdk8新引入的类,它是一个可选的int值包装器,可以帮助我们避免拆箱操作和空指针异常。
OptionalInt类中的ifPresentOrElse()方法可以根据OptionalInt是否存在来执行指定的操作。如果OptionalInt存在,则执行第一个操作,否则执行第二个操作。
public void ifPresentOrElse(IntConsumer action, Runnable emptyAction)
参数说明:
import java.util.OptionalInt;
public class OptionalDemo {
public static void main(String[] args) {
OptionalInt optionalInt = OptionalInt.of(42);
optionalInt.ifPresentOrElse(
value -> System.out.println("OptionalInt的值为:" + value),
() -> System.out.println("OptionalInt为空")
);
}
}
输出结果:
OptionalInt的值为:42
解析: 在示例代码中,我们创建了一个OptionalInt对象,值为42。然后,我们调用了ifPresentOrElse()方法。由于OptionalInt存在,因此执行第一个操作,即打印“OptionalInt的值为:42”。
再看一下下面这个例子:
import java.util.OptionalInt;
public class OptionalDemo {
public static void main(String[] args) {
OptionalInt optionalInt = OptionalInt.empty();
optionalInt.ifPresentOrElse(
value -> System.out.println("OptionalInt的值为:" + value),
() -> System.out.println("OptionalInt为空")
);
}
}
输出结果:
OptionalInt为空
解析: 在示例代码中,我们创建了一个空的OptionalInt对象。然后,我们调用了ifPresentOrElse()方法。由于OptionalInt不存在,因此执行第二个操作,即打印“OptionalInt为空”。
Java中的OptionalInt ifPresentOrElse()方法是一个很方便的操作可选int值的方法。可以避免拆箱操作和空指针异常,使程序更加健壮。