随笔 - 832  文章 - 2  评论 - 31  阅读 - 167万

Optional类的基本使用(没怎么看)

参考:https://www.runoob.com/java/java8-optional-class.html

java8中引入了一个新类:Optional,用于日常编码中对空指针异常进行限制和处理:

 Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。

Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。

Optional 类的引入很好的解决空指针异常。

返回值 方法 说明
static <T> Optional<T> empty() 返回一个空 Optional实例
static <T> Optional<T> of(T value) 将非空值设置到Optional实例并返回该实例
static <T> Optional<T> ofNullable(T value) 将值设置到Optional实例中并返回该实例
T get() 如果一个值是在这 Optional,返回值,否则将 NoSuchElementException
T orElse(T other) 如果当前有值且非空则返回该值,否则返回 other

 

 

类声明

1
2
以下是一个java.util.Optional<T>类的声明
public final class Optional<T> extends Object     

 

 

测试:

复制代码
复制代码
package test.HimmaQ;

import java.util.Optional;



public class OptionalTest {

    public static void main(String[] args) {
        Optional.of(null);  //NullPointerException
        Optional.ofNullable(null);//可放入null值(允许为null)
        System.out.println(Optional.ofNullable("1111").get());//输出1111
        Optional.ofNullable(null).get();//Optional.get()  NoSuchElementException,当Optional中放的是null时用get()取则报该异常
        System.out.println(Optional.ofNullable(null).orElse("2222"));//输出2222
        System.out.println(Optional.ofNullable("1111").orElse("2222"));//输出1111
        System.out.println(Optional.ofNullable(null).isPresent());//输出false
        System.out.println(Optional.ofNullable("1111").isPresent());//输出true

    }

}
复制代码
 
复制代码
posted on   小破孩楼主  阅读(321)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示