博客
关于我
一篇文章带你搞懂 Java 中数组长度为 0 和数组为 null 的区别
阅读量:360 次
发布时间:2019-03-04

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

在Java编程中,处理数组时需要注意其初始状态。以下是几种常见情况的分析:

  • 仅声明数组int[] a;

    这只是一个数组变量的声明,但未初始化。使用a.length会导致空指针异常,因为a仍为null

  • 赋值为nullint[] a = null;

    这个语句将数组变量赋值为null,没有创建数组对象。任何操作都会导致空指针异常。

  • 初始化为空数组int[] a = new int[0];

    这里创建了一个有效的数组对象,长度为0,可以正常使用,但没有内容。

  • 注意事项:在判断数组状态时,首先检查是否为空指针再判断长度,避免因顺序错误导致空指针异常。正确的顺序是先检查null,然后检查长度是否为0。

    转载地址:http://tsar.baihongyu.com/

    你可能感兴趣的文章
    opencv图像分割3-分水岭方法
    查看>>
    opencv图像切割1-KMeans方法
    查看>>
    OpenCV图像处理篇之阈值操作函数
    查看>>
    OpenCV学习(13) 细化算法(1)(转)
    查看>>
    OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波
    查看>>
    OpenCV学堂 | OpenCV案例 | 基于轮廓分析对象提取
    查看>>
    OpenCV官方文档 理解k - means聚类
    查看>>
    OpenCV探索
    查看>>
    openCV目标识别 目标跟踪 YOLO5深度学习 Python 计算机视觉 计算机毕业设计 源码下载
    查看>>
    opencv笔记(1):图像缩放
    查看>>
    opencv笔记(二十四)——得到轮廓之后找到凸包convex hull
    查看>>
    OpenCV计算点到直线的距离 数学法
    查看>>
    Opencv识别图中人脸
    查看>>
    opencv面向对象设计初探
    查看>>
    OpenCV(1)读写图像
    查看>>
    OpenCV:不规则形状区域中每种颜色的像素数?
    查看>>
    OpenCV:概念、历史、应用场景示例、核心模块、安装配置
    查看>>
    OpenDaylight融合OpenStack架构分析
    查看>>
    openEuler Summit 2022 成功举行,开启全场景创新新时代
    查看>>
    OpenFeign源码学习
    查看>>