博客
关于我
一篇文章带你搞懂 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/

    你可能感兴趣的文章
    Objective-C实现hammingDistance汉明距离算法(附完整源码)
    查看>>
    Objective-C实现hanning 窗(附完整源码)
    查看>>
    Objective-C实现hanoiTower汉诺塔算法(附完整源码)
    查看>>
    Objective-C实现hardy ramanujana定理算法(附完整源码)
    查看>>
    Objective-C实现harmonic series调和级数算法(附完整源码)
    查看>>
    Objective-C实现harris算法(附完整源码)
    查看>>
    Objective-C实现HashTable哈希表算法(附完整源码)
    查看>>
    Objective-C实现haversine distance斜距算法(附完整源码)
    查看>>
    Objective-C实现heap sort堆排序算法(附完整源码)
    查看>>
    Objective-C实现heaps algorithm堆算法(附完整源码)
    查看>>
    Objective-C实现heap堆算法(附完整源码)
    查看>>
    Objective-C实现Heap堆算法(附完整源码)
    查看>>
    Objective-C实现hexagonal numbers六边形数算法(附完整源码)
    查看>>
    Objective-C实现hidden layers neural network浅层神经网络算法(附完整源码)
    查看>>
    Objective-C实现highest response ratio next高响应比优先调度算法(附完整源码)
    查看>>
    Objective-C实现hill climbing爬山法用来寻找函数的最大值算法(附完整源码)
    查看>>
    Objective-C实现Hill密码加解密算法(附完整源码)
    查看>>
    Objective-C实现histogram stretch直方图拉伸算法(附完整源码)
    查看>>
    Objective-C实现Hopcroft算法(附完整源码)
    查看>>
    Objective-C实现horizontal projectile motion平抛运动算法(附完整源码)
    查看>>