Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java.util.optional

作者:陌路情殇   发布日期:2026-06-05   浏览:61

import java.util.Optional;

public class OptionalExample {
    public static void main(String[] args) {
        // 创建一个包含值的Optional对象
        Optional<String> optionalWithValue = Optional.of("Hello, World!");

        // 检查Optional对象是否包含值,并打印出来
        if (optionalWithValue.isPresent()) {
            System.out.println("Optional contains: " + optionalWithValue.get());
        } else {
            System.out.println("Optional is empty.");
        }

        // 创建一个空的Optional对象
        Optional<String> emptyOptional = Optional.empty();

        // 使用orElse提供默认值
        String defaultValue = emptyOptional.orElse("Default Value");
        System.out.println("Empty Optional with default value: " + defaultValue);

        // 使用map方法对Optional中的值进行转换
        Optional<Integer> lengthOptional = optionalWithValue.map(String::length);
        System.out.println("Length of the string in Optional: " + lengthOptional.orElse(0));

        // 使用ifPresent对存在值时执行操作
        optionalWithValue.ifPresent(value -> System.out.println("Value is present: " + value));

        // 使用orElseThrow在没有值时抛出异常
        try {
            String value = emptyOptional.orElseThrow(() -> new RuntimeException("No value present"));
        } catch (RuntimeException e) {
            System.out.println(e.getMessage());
        }
    }
}

解释说明

  1. 创建Optional对象:

    • Optional.of("Hello, World!"): 创建一个包含指定非空值的Optional对象。
    • Optional.empty(): 创建一个空的Optional对象。
  2. 检查和获取值:

    • isPresent(): 检查Optional对象中是否有值。
    • get(): 获取Optional对象中的值,如果Optional为空,则会抛出NoSuchElementException
  3. 提供默认值:

    • orElse("Default Value"): 如果Optional为空,则返回提供的默认值。
  4. 转换值:

    • map(String::length): 对Optional中的值应用指定的函数(如计算字符串长度),并返回一个新的Optional对象。
  5. 条件执行:

    • ifPresent(...): 如果Optional中有值,则执行给定的操作。
  6. 抛出异常:

    • orElseThrow(...): 如果Optional为空,则抛出指定的异常。

上一篇:java validator

下一篇:java代码怎么运行

大家都在看

java url decode

java判断是windows还是linux

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java list 查找

java 解压rar

jsonobject.tojavaobje

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站