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

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

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

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

//对于自定义的类,当用它定义对象数组时,不仅要初始化元素的个数,还要new出每个数组元素,

//才真正初始化出了对象数组,才可以进行赋值等操作,否则就会出现NullPointerException(空指针异常)!

class MultiDimensionArray // 一个自定义的类,用于定义**数组来测试用。

{

public int a; // 定义成员变量a

public int b; // 定义成员变量b

public MultiDimensionArray() // 无参构造函数

{

this.a = 0;

this.b = 0;

}

public MultiDimensionArray(int i, int j) // 有参构造函数

{

this.a = i;

this.b = j;

}

}

public class ArrayDefinition {        //在这个类中,将使用上面的类来定义对象数组。

public static void main(String[] args) {

MultiDimensionArray objArray[][] = new MultiDimensionArray[3][]; //按你的方式定义一个对象数组!

objArray[0]=new MultiDimensionArray[3];  //定义第一行的列数

objArray[0][0].a = 88;//此时这一句就出现NullPointerException,因为对象objArray[0][0]本身还没new出来!

objArray[0][0]=new MultiDimensionArray();  //new出objArray[0][0]来,给该分配了空间。

objArray[0][0].a = 88;  //此时这条语句就没错了。

//同理,对于自定义对象数组,要通过循环new出每个元素之后,才可以给它们赋值!

}

}

java动态二维数组定义_Java动态定义二维数组问题相关推荐

  1. java数组长度定义_java怎么定义数组的长度?java中的数组长度问题

    之前对Java中的数组一直是一知半解,特别是数组中的长度问题.今天对这个问题也算是小有理解,算是对java数组的有了更进一步的了解吧.不说了,先来例子再说:package com.test; publ ...

  2. java 静态常量定义_Java常量定义需要注意事项及static作用(复习)

    在任何开发语言中,都需要定义常量.在Java开发语言平台中也不例外.不过在Java常量定义的时候,跟其他语言有所不同.其有自己的特色.在这篇文章中,主要针对Java语言中定义常量的注意事项进行解析,帮 ...

  3. 两个byte数组拼接_java中两个byte数组实现合并的示例

    java中两个byte数组实现合并的示例 今天在于硬件进行交互的过程中,要到了了需要两个数组进行合并,然后对数组进行反转和加密操作,以下是两个byte数组合并的方法. /** * * @param d ...

  4. java二维数组省略_Java基础教程——二维数组

    二维数组 Java里的二维数组其实是数组的数组,即每个数组元素都是一个数组. 每个数组的长度不要求一致,但最好一致. // 同样有两种风格的定义方法 int[][] _arr21_推荐 = { { 1 ...

  5. java动态数组简介_Java动态数组

    Dapper学习 - Dapper.Rainbow(一) - Create Dapper这个ORM有许多扩展, 我自己用过两种, 也算是比较主流的两种, Rainbow和Extension, 这里就先 ...

  6. java二维数组合并_java怎么合并二维数组

    import java.util.ArrayList; import java.util.HashSet; import java.util.Hashtable; import java.util.I ...

  7. java 数组写法_java书写、数据类型、数组定义

    这里只记录java与php.javascript不同的地方,相同的地方就不赘述了. 1.java文件源码为以.java为后缀的文件,字节码文件是以.class为后缀的文件. 2.写好一个java源码之 ...

  8. java word模板替换多行_Java动态替换word模板的最佳实践

    poi-tl 基于word的模板渲染(替换)组件 对docx格式的文档增加模板语法,增加渲染模板的方便性,目前支持对段落.页眉.页脚.表格的文本.图片.表单渲染. 对于word模板替换,我们不仅要考虑 ...

  9. java动态编译无法导包_java动态编译整个项目,解决jar包找不到问题.doc

    java动态编译整个项目,解决jar包找不到问题.doc 还剩 8页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 64. } 65. 66. /*** ...

  10. java数组循环_Java之循环结构及数组

    循环结构 for循环for(条件初始化;条件判断;条件变化){ 重复执行的代码: } for循环的执行流程: 1.条件初始化 2.条件判断 3.不满足条件结束循环,满足条件执行,执行循环体语句 4.条 ...

最新文章

  1. Import error: no module named cv2 错误解决方法
  2. t580 thinkpad_聊聊ThinkPad T580:除了大屏,还有什么
  3. 2.4 shell 脚本基础
  4. 【BZOJ3156】防御准备,斜率优化DP
  5. 工信部苗圩:提速降费并不会影响运营商对5G投入
  6. sql高级语法之窗口函数调用
  7. 删除病毒ETH的方法 如何解密sql文件 恢复mdf数据库文件
  8. mysql 写入性能_MySQL存储写入性能严重抖动分析
  9. 6.Entity FrameWork Core 5.0 删除、修改数据
  10. TI 库仑计高级篇之Chemistry 创建
  11. 软考网络工程师下午题知识点汇总
  12. 利用模式进行构建第九讲——树形模式
  13. qq离线文件服务器是怎么实现秒传,一招教你提高QQ文件传输速度的方法
  14. JAVA 将图片转换成pdf文件
  15. 计算机关机重启后黑屏,电脑重启黑屏强制关机后才能开怎么办
  16. 压缩工具Bandizip
  17. Line APP端协议登录、群发、拉群功能
  18. html5图片和两行文字垂直居中显示,何如让文字跟图片垂直居中对齐
  19. 从一个CFS调度案例谈Linux系统卡顿的根源
  20. PHP程序员专用输入法皮肤

热门文章

  1. 计算机监理培训计划,监理人员培训计划书.doc
  2. 信息系统集成监理费收取标准_信息产业部信息系统工程监理与咨询服务收费参考标准Word1...
  3. 支付宝小程序导航栏背景颜色全部更换和单个更换
  4. 锂电池欧姆内阻和极化内阻
  5. 单核工作法图解:事多到事少,拖延变高效
  6. Eclipse配置 eclipse Java 配置 eclipse 简单配置 Eclipse 插件 配置 推荐 eclipse插件 eclipse 必备插件
  7. 永磁同步电机矢量控制(二)—— 控制原理与坐标变换推导
  8. ESP32音频框架 ESP-ADF 添加按键外设流程代码跟踪
  9. 微信接入之获取用户头像
  10. 嵌入式(单片机方向)工程师如何做好定位和职业规划