论坛
BBS
空间测绘
发表
发布文章
提问答疑
搜索
您还未登录
登录后即可体验更多功能
立即登录
我的收藏
提问答疑
我要投稿
IOT
[18071] 2020-05-09_JAVA8之妙用Optional解决判断Null为空的问题
文档创建者:
s7ckTeam
浏览次数:
3
最后更新:
2025-01-18
IOT
3 人阅读
|
0 人回复
s7ckTeam
s7ckTeam
当前离线
积分
-54
6万
主题
-6万
回帖
-54
积分
管理员
积分
-54
发消息
2020-05-09_JAVA8之妙用Optional解决判断Null为空的问题
J
A
V
A
8
之
妙
用
O
p
t
i
o
n
a
l
解
决
判
断
N
u
l
l
为
空
的
问
题
z
j
h
r
e
d
H
A
C
K
之
道
2
0
2
0
-
0
5
-
0
9
引
言
引
言
在
文
章
的
开
头
,
先
说
下
N
P
E
问
题
,
N
P
E
问
题
就
是
,
我
们
在
开
发
中
经
常
碰
到
的
N
u
l
l
P
o
i
n
t
e
r
E
x
c
e
p
t
i
o
n
.
假
设
我
们
有
两
个
类
,
他
们
的
U
M
L
类
图
如
下
图
所
示
在
这
种
情
况
下
,
有
如
下
代
码
u
s
e
r
.
g
e
t
A
d
d
r
e
s
s
(
)
.
g
e
t
P
r
o
v
i
n
c
e
(
)
;
这
种
写
法
,
在
u
s
e
r
为
n
u
l
l
时
,
是
有
可
能
报
N
u
l
l
P
o
i
n
t
e
r
E
x
c
e
p
t
i
o
n
异
常
的
。
为
了
解
决
这
个
问
题
,
于
是
采
用
下
面
的
写
法
这
种
写
法
是
比
较
丑
陋
的
,
为
了
避
免
上
述
丑
陋
的
写
法
,
让
丑
陋
的
设
计
变
得
优
雅
。
J
A
V
A
8
提
供
了
O
p
t
i
o
n
a
l
类
来
优
化
这
种
写
法
,
接
下
来
的
正
文
部
分
进
行
详
细
说
明
A
P
I
介
绍
介
绍
先
介
绍
一
下
A
P
I
,
与
其
他
文
章
不
同
的
是
,
本
文
采
取
类
比
的
方
式
来
讲
,
同
时
结
合
源
码
。
而
不
像
其
他
文
章
一
样
,
一
个
个
A
P
I
罗
列
出
来
,
让
人
找
不
到
重
点
。
1
、
O
p
t
i
o
n
a
l
(
T
v
a
l
u
e
)
,
e
m
p
t
y
(
)
,
o
f
(
T
v
a
l
u
e
)
,
o
f
N
u
l
l
a
b
l
e
(
T
v
a
l
u
e
)
这
四
个
函
数
之
间
具
有
相
关
性
,
因
此
放
在
一
组
进
行
记
忆
。
先
说
明
一
下
,
O
p
t
i
o
n
a
l
(
T
v
a
l
u
e
)
,
即
构
造
函
数
,
它
是
p
r
i
v
a
t
e
权
限
的
,
不
能
由
外
部
调
用
的
。
其
余
三
个
函
数
是
p
u
b
l
i
c
权
限
,
供
我
们
所
调
用
。
那
么
,
O
p
t
i
o
n
a
l
的
本
质
,
就
是
内
部
储
存
了
一
个
真
实
的
值
,
在
构
造
的
时
候
,
就
直
接
判
断
其
值
是
否
为
空
。
好
吧
,
这
么
说
还
是
比
较
抽
象
。
直
接
上
O
p
t
i
o
n
a
l
(
T
v
a
l
u
e
)
构
造
函
数
的
源
码
,
如
下
图
所
示
那
么
,
o
f
(
T
v
a
l
u
e
)
的
源
码
如
下
:
也
就
是
说
o
f
(
T
v
a
l
u
e
)
函
数
内
部
调
用
了
构
造
函
数
。
根
据
构
造
函
数
的
源
码
我
们
可
以
得
出
两
个
结
论
:
通
过
o
f
(
T
v
a
l
u
e
)
函
数
所
构
造
出
的
O
p
t
i
o
n
a
l
对
象
,
当
V
a
l
u
e
值
为
空
时
,
依
然
会
报
N
u
l
l
P
o
i
n
t
e
r
E
x
c
e
p
t
i
o
n
。
通
过
o
f
(
T
v
a
l
u
e
)
函
数
所
构
造
出
的
O
p
t
i
o
n
a
l
对
象
,
当
V
a
l
u
e
值
不
为
空
时
,
能
正
常
构
造
O
p
t
i
o
n
a
l
对
象
。
除
此
之
外
呢
,
O
p
t
i
o
n
a
l
类
内
部
还
维
护
一
个
v
a
l
u
e
为
n
u
l
l
的
对
象
,
大
概
就
是
长
下
面
这
样
的
那
么
,
的
作
用
就
是
返
回
E
M
P
T
Y
对
象
。
e
m
p
t
y
(
)
好
了
铺
垫
了
这
么
多
,
可
以
说
的
作
用
了
,
上
源
码
好
吧
,
大
家
应
该
都
看
得
懂
什
么
意
思
了
。
相
比
较
o
f
(
T
v
a
l
u
e
)
的
区
别
就
是
,
当
v
a
l
u
e
值
为
n
u
l
l
时
,
o
f
(
T
v
a
l
u
e
)
会
报
N
u
l
l
P
o
i
n
t
e
r
E
x
c
e
p
t
i
o
n
异
常
;
o
f
N
u
l
l
a
b
l
e
(
T
v
a
l
u
e
)
不
会
t
h
r
o
w
E
x
c
e
p
t
i
o
n
,
o
f
N
u
l
l
a
b
l
e
(
T
v
a
l
u
e
)
直
接
返
回
一
个
E
M
P
T
Y
对
象
。
那
是
不
是
意
味
着
,
我
们
在
项
目
中
只
用
o
f
N
u
l
l
a
b
l
e
函
数
而
不
用
o
f
函
数
呢
?
不
是
的
,
一
个
东
西
存
在
那
么
自
然
有
存
在
的
价
值
。
当
我
们
在
运
行
过
程
中
,
不
想
隐
藏
N
u
l
l
P
o
i
n
t
e
r
E
x
c
e
p
t
i
o
n
。
而
是
要
立
即
报
告
,
这
种
情
况
下
就
用
O
f
函
数
。
但
是
不
得
不
承
认
,
这
样
的
场
景
真
的
很
少
。
博
主
也
仅
在
写
j
u
n
i
t
测
试
用
例
中
用
到
过
此
函
数
。
2
、
o
r
E
l
s
e
(
T
o
t
h
e
r
)
,
o
r
E
l
s
e
G
e
t
(
S
u
p
p
l
i
e
r
<
?
e
x
t
e
n
d
s
T
>
o
t
h
e
r
)
和
o
r
E
l
s
e
T
h
r
o
w
(
S
u
p
p
l
i
e
r
<
?
e
x
t
e
n
d
s
X
>
e
x
c
e
p
t
i
o
n
S
u
p
p
l
i
e
r
)
这
三
个
函
数
放
一
组
进
行
记
忆
,
都
是
在
构
造
函
数
传
入
的
v
a
l
u
e
值
为
n
u
l
l
时
,
进
行
调
用
的
。
o
r
E
l
s
e
和
o
r
E
l
s
e
G
e
t
的
用
法
如
下
所
示
,
相
当
于
v
a
l
u
e
值
为
n
u
l
l
时
,
给
予
一
个
默
认
值
:
这
两
个
函
数
的
区
别
:
当
u
s
e
r
值
不
为
n
u
l
l
时
,
o
r
E
l
s
e
函
数
依
然
会
执
行
c
r
e
a
t
e
U
s
e
r
(
)
方
法
,
而
o
r
E
l
s
e
G
e
t
函
数
并
不
会
执
行
c
r
e
a
t
e
U
s
e
r
(
)
方
法
,
大
家
可
自
行
测
试
。
至
于
o
r
E
l
s
e
T
h
r
o
w
,
就
是
v
a
l
u
e
值
为
n
u
l
l
时
,
直
接
抛
一
个
异
常
出
去
,
用
法
如
下
所
示
o
f
N
u
l
l
a
b
l
e
(
T
v
a
l
u
e
)
3
、
m
a
p
(
F
u
n
c
t
i
o
n
<
?
s
u
p
e
r
T
,
?
e
x
t
e
n
d
s
U
>
m
a
p
p
e
r
)
和
f
l
a
t
M
a
p
(
F
u
n
c
t
i
o
n
<
?
s
u
p
e
r
T
,
O
p
t
i
o
n
a
l
<
U
>
>
m
a
p
p
e
r
)
这
两
个
函
数
放
在
一
组
记
忆
,
这
两
个
函
数
做
的
是
转
换
值
的
操
作
。
直
接
上
源
码
这
两
个
函
数
,
在
函
数
体
上
没
什
么
区
别
。
唯
一
区
别
的
就
是
入
参
,
m
a
p
函
数
所
接
受
的
入
参
类
型
为
F
u
n
c
t
i
o
n
<
?
s
u
p
e
r
T
,
?
e
x
t
e
n
d
s
U
>
而
f
l
a
p
M
a
p
的
入
参
类
型
为
在
具
体
用
法
上
,
对
于
m
a
p
而
言
:
如
果
U
s
e
r
结
构
是
下
面
这
样
的
这
时
候
取
n
a
m
e
的
写
法
如
下
所
示
对
于
f
l
a
t
M
a
p
而
言
:
如
果
U
s
e
r
结
构
是
下
面
这
样
的
F
u
n
c
t
i
o
n
<
?
s
u
p
e
r
T
,
O
p
t
i
o
n
a
l
<
U
>
>
这
时
候
取
n
a
m
e
的
写
法
如
下
所
示
4
、
i
s
P
r
e
s
e
n
t
(
)
和
i
f
P
r
e
s
e
n
t
(
C
o
n
s
u
m
e
r
<
?
s
u
p
e
r
T
>
c
o
n
s
u
m
e
r
)
这
两
个
函
数
放
在
一
起
记
忆
,
即
判
断
v
a
l
u
e
值
是
否
为
空
,
而
就
是
在
v
a
l
u
e
值
不
为
空
时
,
做
一
些
操
作
。
这
两
个
函
数
的
源
码
如
下
需
要
额
外
说
明
的
是
,
大
家
千
万
不
要
把
给
写
成
i
s
P
r
e
s
e
n
t
i
f
P
r
e
s
e
n
t
因
为
这
样
写
,
代
码
结
构
依
然
丑
陋
。
博
主
会
在
后
面
给
出
正
确
写
法
至
于
,
用
法
也
很
简
单
,
如
下
所
示
5
、
f
i
l
t
e
r
(
P
r
e
d
i
c
a
t
e
<
?
s
u
p
e
r
T
>
p
r
e
d
i
c
a
t
e
)
不
多
说
,
直
接
上
源
码
f
i
l
t
e
r
方
法
接
受
一
个
来
对
中
包
含
的
值
进
行
过
滤
,
如
果
包
含
的
值
满
足
条
件
,
那
么
还
是
返
回
这
个
O
p
t
i
o
n
a
l
;
否
则
返
回
。
用
法
如
下
i
f
P
r
e
s
e
n
t
(
C
o
n
s
u
m
e
r
<
?
s
u
p
e
r
T
>
c
o
n
s
u
m
e
r
)
P
r
e
d
i
c
a
t
e
O
p
t
i
o
n
a
l
O
p
t
i
o
n
a
l
.
e
m
p
t
y
如
上
所
示
,
如
果
u
s
e
r
的
n
a
m
e
的
长
度
是
小
于
6
的
,
则
返
回
。
如
果
是
大
于
6
的
,
则
返
回
一
个
E
M
P
T
Y
对
象
。
实
战
使
用
实
战
使
用
例
一
在
函
数
方
法
中
,
以
前
写
法
J
A
V
A
8
写
法
例
二
比
如
,
在
主
程
序
中
,
以
前
写
法
J
A
V
A
8
写
法
例
三
以
前
写
法
j
a
v
a
8
写
法
其
他
的
例
子
,
不
一
一
列
举
了
。
不
过
采
用
这
种
链
式
编
程
,
虽
然
代
码
优
雅
了
。
但
是
,
逻
辑
性
没
那
么
明
显
,
可
读
性
有
所
降
低
,
大
家
项
目
中
看
情
况
酌
情
使
用
。
回复
举报
上一个主题
下一个主题
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
!disable!!post_parseurl!
使用Markdown编辑器编辑
使用富文本编辑器编辑
回帖后跳转到最后一页