0
点赞
收藏
分享

微信扫一扫

java基础知识点之一维数组的两个常见小问题

一:概述

在一维数组的使用中,一不小心就会出现错误,尤其是在初学的情况下。在这里我要说明的是两个常见的问题索引越界问题和空指针异常的问题。

二:具体说明

<1>索引越界问题

                              java基础知识点之一维数组的两个常见小问题_堆内存

初学者打眼一看,可能认为这没有错误,但运行之后,程序报错了。

                              java基础知识点之一维数组的两个常见小问题_数据_02

这个错误,一不小心就会犯。

因为有时候我们会惯性思维的认为数组长度为4,arr[4]应该是正确的,但是忽略了索引为0的情况,因此输出时,arr[n]中的最大值是数组长度减去1.

<2>空指针异常问题

这个问题指的是:对象不在指向堆内存,还想继续访问数据,访问失败。

                              java基础知识点之一维数组的两个常见小问题_空指针异常_03

                              java基础知识点之一维数组的两个常见小问题_堆内存_04

                              java基础知识点之一维数组的两个常见小问题_数据_05

  1. 对象设置为null,不在指向堆内存数据了,还想继续访问堆内存数据
  2. 对象在使用前,进行不为null的判断(解决方法)

                              java基础知识点之一维数组的两个常见小问题_数据_06

再次运行,发现不会报错。

                              java基础知识点之一维数组的两个常见小问题_空指针异常_07

// 定义一个数组
         int[] arr = new int[4];
         System.out.println(arr[3]);
         // 把null赋值给数组
         arr = null;
         // 输出元素
         if(arr != null) {
             System.out.println(arr[0]);
         }




举报

相关推荐

0 条评论