• java动态定义二维数组问题


     昨天,想将查询数据库的内容复制到二维数组中,但是总是NullPointerException,提示空指针的异常。

    反正我是自己研究了一个晚上,百度上看了很多的关于动态初始化二维数组的文章,但是就是没找到我这种情况的。

    无奈之下,我厚着脸皮向我的指导老师发出了请求的邮件,老师在百忙之中,还是很细心的为我解答。我看到老师回复的邮件豁然开朗。

    下面将邮件的内容与大家分享!

    Code:
    1. //对于自定义的类,当用它定义对象数组时,不仅要初始化元素的个数,还要new出每个数组元素,  
    2. //才真正初始化出了对象数组,才可以进行赋值等操作,否则就会出现NullPointerException(空指针异常)!  
    3. class MultiDimensionArray // 一个自定义的类,用于定义**数组来测试用。  
    4. {  
    5.     public int a; // 定义成员变量a  
    6.     public int b; // 定义成员变量b  
    7.   
    8.     public MultiDimensionArray() // 无参构造函数  
    9.     {  
    10.         this.a = 0;  
    11.         this.b = 0;  
    12.     }  
    13.   
    14.     public MultiDimensionArray(int i, int j) // 有参构造函数  
    15.     {  
    16.         this.a = i;  
    17.         this.b = j;  
    18.     }  
    19. }  
    20.   
    21. public class ArrayDefinition {         //在这个类中,将使用上面的类来定义对象数组。  
    22.     public static void main(String[] args) {  
    23.         MultiDimensionArray objArray[][] = new MultiDimensionArray[3][]; //按你的方式定义一个对象数组!  
    24.         objArray[0]=new MultiDimensionArray[3];  //定义第一行的列数  
    25.           
    26.         objArray[0][0].a = 88;//此时这一句就出现NullPointerException,因为对象objArray[0][0]本身还没new出来!  
    27.           
    28.         objArray[0][0]=new MultiDimensionArray();  //new出objArray[0][0]来,给该分配了空间。  
    29.           
    30.         objArray[0][0].a = 88;  //此时这条语句就没错了。  
    31.         //同理,对于自定义对象数组,要通过循环new出每个元素之后,才可以给它们赋值!  
    32.     }  
    33. }  

     最后,再次感谢一下老师!老师真的很有耐心!


    ps:我的新博客地址:http://www.xinghaixu.com

    ----------------------更多博文请关注http://www.xinghaixu.com-----------------------
  • 相关阅读:
    解决ubuntu下pip安装报错问题:ERROR: Cannot uninstall 'XXXXXXX'. It is a distutils installed project...
    【IMU】【卡尔曼滤波】惯性导航误差微分方程与状态转移方程
    AspNetCore 路由 <3.0>
    AspNetCore 认证 <1.0>
    AspNetCore 鉴权 <2.0>
    apollo学习2:docker集群部署
    C#中HashSet<T>、SortedSet<T>和Hashtable的使用以及所有集合类型的概述
    Spring自带的Objects等工具类(减少繁琐代码)
    五分钟,手撸一个简单的Spring容器
    jdk1.8: Consumer函数
  • 原文地址:https://www.cnblogs.com/xcxinghai/p/3283899.html
Copyright © 2020-2023  润新知