Optional 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Optional 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Optional 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Optional 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Optional 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
开发语言 Google Go 查看源码 »
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 Misko_Lee
适用人群 未知
收录时间 2018-04-02

软件简介

为 Golang 语言增加动态类型与 Optional 类型,主要使用场景是:旧 PHP/Ruby 系统兼容性升级。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (1)

加载中
这是类似 Java8 Optional 的概念吗? Go 版本?
2020/11/11 10:55
回复
举报
更多评论
暂无内容
2019/12/10 17:00

Optional

Optional 容器类:用于尽量避免空指针异常 Optional.of(T t) : 创建一个 Optional 实例,t是null则报NullPointException Optional.empty() : 创建一个空的 Optional 实例 Optional.ofNullable(T t):若 t 不为 null,创建 Optional 实例,否则创建空实例 isPresent() : 判断是否包含值 orElse(T t) : 如果调用对象包含值,返回该值,否则返回t orElseGet(Supplier s) :如果调用对象包含值,返回该值,否则返回 s 获取的值 map(Func...

0
0
2020/11/17 10:12

Optional

https://www.cnblogs.com/zhangboyu/p/7580262.html

0
0
发表了博客
2018/06/12 16:06

Java8 Optional && Guava Optional

Java8 -- Optional boolean isPresent():与obj != null()一样;调用get()前要调用isPresent()检查,不然会报错 Optional的三种构造方式: Optional.of(obj):obj不能为null,不然报npe Optional.ofNullable(obj):obj为null时得到Optional.empty(),非null就调用Optional.of(obj) Optional.empty() orElse(null):存在即返回,无则提供默认值 orElseGet(() -> fetchAUserFromDatabase());:存在即返回,无则由函数来产...

0
1
发表了博客
2018/11/14 16:29

Java8之Optional

`java.lang.NullPointException`这个异常,写过几年`Java`的没人没遇到过这个, 为了避免抛出这个异常,我们经常会写出这样的代码: ```java User pet = userDao.findById(1); if (null != user) { return user.getName(); } ``` 扎心的是,我们经常会忘记写这个判断, 然后`NullPointException`就来了. 在`Java`的世界里,为了避免这个问题, 有一个模式叫做`Null Object`,主要做法就是为某个可能为null的对象单独创建一个特殊的对象,...

0
0
发表了博客
2019/06/19 17:12

boost optional

boost::optional can be used for optional return values. 1. optional return values with boost::optional #include <boost/optional.hpp> #include <iostream> #include <cstdlib> #include <ctime> #include <cmath> using boost::optional; optional<int> get_even_random_number() { int i = std::rand(); return (i % 2 == 0) ? i : optional<int>(); } int main() { std::srand(static_cast<un...

0
0
发表了博客
2019/04/30 12:23

Java8之Optional

文章为博主原创,如需转载请与作者沟通,并标明来源 [https://my.oschina.net/MyoldTime](https://my.oschina.net/MyoldTime) ## Optional 使用背景 Java 8 引入的 Optional 主要是用来解决 NullPointerException 的问题的。通过链式方法调用和Lambda表达式可以优雅的解决层层判空、繁琐的if语句的问题。但是 Optional 也降低了代码的可读性,虽然老式的层层if判空繁琐,但是可读性非常高,一眼就看的懂什么意思。Optional 处理...

0
0
发表了博客
2019/09/30 02:53

JDK8,Optional

   作为程序员,你肯定遇到过NullPointerException, 这个异常对于初出茅庐的新人, 还是久经江湖的老手都是不可避免的痛, 可又是那么的无能为力,为了解决它,你只能在使用某个值之前,对其进行判空处理。然而这样会使得代码变得臃肿不堪。幸好jdk8引入了optional来处理了null的问题,使得我们可以不再对null做过多的关心。 先展示jdk8之前的写法 1 // First before jdk8 2 Long id = 0L; 3 User user = getUserById(id); ...

0
1
发表于开发技能专区
01/01 11:00

jdk8 optional

Optional 是jdk1.8(新命名方式应该说 JDK8)推出的解决空指针问题的类,解决空指针这个说法不是准确,应该说是方便简洁处理空指针问题吧。毕竟jdk8推出了很多新语言使java语言编写程序更加简洁。 参考:https://www.jianshu.com/p/d81a5f7c9c4e 下边来看下Optional类的基本使用吧: - 场景一: 返回Optional 1. 返回非空对象 Optional.of(result) 2. 返回可能为空的对象 Optional.ofNullable(student) Optional a = Optional.o...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2019/05/17 16:15

Optional 能否替换三元表达式

System.out.println(Optional.ofNullable("demo").orElse("a")); //demo System.out.println(Optional.ofNullable(null).orElse("a")); //a optional替换三元表达式,是不是只能判断是否等于空的情况,如果下面这种应该怎么操作呢? a == b ? 1 : 0...

8
0
发表了问答
2019/12/25 17:35

java8 下面代码只是判断了不为空执行一个逻辑,如何修改可以判断一个对象是否为空 为空执行一个逻辑 不为空执行另外一个逻辑?

Optional.ofNullable(user).ifPresent(u-> { // TODO: do something } );

8
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
1 评论
0 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部