博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java1.8--OptionalInt,OptionalDouble,OptionalLong类
阅读量:7095 次
发布时间:2019-06-28

本文共 1066 字,大约阅读时间需要 3 分钟。

OptionalInt,OptionalDouble,OptionalLong类的工作方式与Optional类十分类似,只不过他们是专门操作int,都变了,long类型的值而设计的。因此,他们分别定义了getAsDouble(),getAsInt(),getAsLong()方法,而不是get()方法。

值得注意的一点是,上面这3个类并不支持ofNullable(),filter(),map(),flatMap()这几个方法。下面是OptionalInt类的实例代码:
import java.util.OptionalInt;/** * @创建作者: LinkinPark * @创建时间: 2015年10月31日 * @功能描述: OptionalInt,OptionalDouble,OptionalLong类示例代码 */public class Test{	public static void main(String[] args)	{		//静态工厂方法获取一个示例		OptionalInt op = OptionalInt.of(1);		if (op.isPresent()) //判断OptionalInt中是否有值		{			//获得OptionalInt对象里面的值,输出1			System.out.println(op.getAsInt());		}		op.ifPresent((value) -> System.out.println("value:" + value));		//创建一个空值对象		OptionalInt opint = OptionalInt.empty();		if (opint.isPresent())		{			//和Optional一样,输出No value present			System.out.println(opint.getAsInt());		}		else		{			//如果没有值,赋初始值			System.out.println(opint.orElse(222));			//如果没有值,赋初始函数			System.out.println(opint.orElseGet(() -> 333));		}		//如果没有值则抛出异常		opint.orElseThrow(NullPointerException::new);	}}

转载于:https://www.cnblogs.com/LinkinPark/p/5232967.html

你可能感兴趣的文章
JAVA虚拟机:对象的创建过程
查看>>
form表单post请求保护 隐藏秘钥
查看>>
作用域插槽,用来属性插入
查看>>
201521123068《Java程序设计》第1周学习总结
查看>>
在服务器上安装MongoDB
查看>>
20140104
查看>>
规则(1)
查看>>
CF1025B Weakened Common Divisor【数论/GCD/思维】
查看>>
【Java】使用CSVUtils生成文件并供下载
查看>>
用户态和内核态
查看>>
VR+生物plus 遐想
查看>>
Java并发编程:线程控制
查看>>
今天聊一聊Java引用类型的强制类型转换
查看>>
把数据保存到数据库archives表时出错,请检查
查看>>
JavaSE基本语法、数据类型、操作符等:int、long、Integer、Long、if、else、for、while...
查看>>
解析XML文件
查看>>
牛客练习赛46
查看>>
netty线程模型
查看>>
Codeforces Round #237 Div.2 A
查看>>
initrd.gz的解压和制作
查看>>