You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用java.util.Optional实现多维数组克隆替代空值判断

实现代码
import java.util.Arrays;
import java.util.Optional;

private static int[][] multiArrayClone(int[][] multiArray) {
    return Optional.ofNullable(multiArray)
            .map(arr -> Arrays.stream(arr).map(int[]::clone).toArray(int[][]::new))
            .orElse(null);
}
逻辑说明
  • 以上实现和你原有代码的行为完全等价,没有额外性能损耗
  • 用Optional.ofNullable()替代了显式的if (multiArray != null)空值判断逻辑
  • 如果想要进一步优化空安全,也可以修改方法返回值类型为Optional<int[][]>,去掉最后的.orElse(null),直接返回Optional实例,调用方可以通过Optional的API更安全地处理空返回场景,避免NPE问题。

内容的提问来源于stack exchange,提问作者Andrzej Więcławski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 19:57:03