`
xcxinghai
  • 浏览: 33543 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

java动态定义二维数组问题

 
阅读更多

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

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

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

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

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

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


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

分享到:
评论

相关推荐

    java实现二维数组转json的方法示例

    在Java编程中,将二维数组转换为JSON格式的数据是常见的数据处理需求,特别是在处理Web服务或数据交换时。本文将详细讲解如何使用Java实现这一功能,以及涉及的相关操作技巧。 首先,我们需要理解二维数组和JSON的...

    JNA调用C++动态库,传入二维数组,通过C++返回二维数组,java调用C++完整案例

    例如,如果你有一个C++函数接收二维数组并返回二维数组,你可以这样在Java中定义: ```java public interface MyDLL extends Library { // 定义C++函数原型 int processArray(int[][] input, int[][] output); } ...

    二维数组转json的java源码

    在Java编程中,将二维数组转换为JSON对象是一项常见的任务,特别是在处理表格数据或结构化信息时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它...

    java二维数组的理解

    本篇文章旨在深入解析Java二维数组的基本概念、定义方式、初始化过程及其常见操作,同时重点探讨Java动态二维数组的相关问题。 #### 一、Java二维数组基本概念 Java中的二维数组可以理解为数组的数组。它通常用于...

    java 将一个二维数组存到txt文件里,然后再读取

    ### Java将一个二维数组存到TXT文件里,然后再读取 在Java编程中,经常会遇到需要将数据存储到文件中的需求。例如,在本例中,我们需要将一个二维数组中的数据写入到TXT文件中,然后再次从该TXT文件中读取这些数据...

    Java二维数组实现简单Map

    在Java编程语言中,二维数组可以被用来模拟简单的Map数据结构。Map是一种键值对的集合,其中每个键(Key)都是唯一的,并且与一个值(Value)相关联。尽管Java提供了内置的Map接口(如HashMap、TreeMap等),但有时...

    java 二维数组的创建与使用

    在Java编程语言中,二维数组是一种特殊的数组,它由多个一维数组组成,形如一个矩阵。二维数组常用于处理表格数据或者进行矩阵运算。本文将深入探讨Java中二维数组的创建、初始化、访问和操作。 ### 1. 创建二维...

    二维数组如何进行冒泡排序

    ### 二维数组冒泡排序详解 #### 一、引言 冒泡排序是一种简单的排序算法,在数据处理领域有着广泛的应用。对于一维数组而言,冒泡排序实现起来相对容易;然而,当涉及到二维数组时,排序的过程就变得复杂起来。...

    二维数组排序

    这里定义了一个`ROW`×`COL`大小的二维数组`s`,其中`ROW`为256,`COL`为3,即创建了一个256行3列的二维数组。 #### 三、随机数填充二维数组 为了测试排序效果,程序通过`Math.random()`生成随机数来填充二维数组...

    java一维和二维数组实现乘法表

    本教程将重点讲解如何使用一维和二维数组来实现乘法表,这对于初学者来说是一个很好的实践项目,有助于理解数组的概念以及如何通过控制流程来输出特定格式的数据。 首先,让我们了解一维数组。一维数组可以被视为...

    JAVA中的二维数组

    ### JAVA中的二维数组知识...以上就是关于Java中一维数组和二维数组的基本知识点,包括它们的定义、初始化、输出以及一些常见的算法操作。通过对这些基本概念的理解和掌握,可以帮助开发者更好地使用Java语言进行编程。

    程序 二维数组

    在C++中,可以这样定义二维数组: ```cpp int arr[3][4]; ``` 这里定义了一个3行4列的二维数组。在Java中,定义方式稍有不同,需要使用两个大括号: ```java int[][] arr = new int[3][4]; ``` 而在Python中,二维...

    Java二维数组的几种定义法.pdf

    本文将详细介绍Java中定义二维数组的四种常见方法,并通过示例代码进行说明。 1. **定义二维数组并分配空间** 这是最基本的定义二维数组的方式。首先声明数组类型,然后指定数组的行数和列数。例如: ```java ...

    定义一个20*5的二维数组,用来存储某班级20位学员的5门课的成绩;这5门课

    定义一个20*5的二维数组,用来存储某班级20位学员的5门课的成绩;这5门课 按存储顺序依次为:core C++,coreJava,Servlet,JSP和EJB。 (1)循环给二维数组的每一个元素赋0~100之间的随机整数。 (2)按照列表的...

    Java数组的定义、初始化、及二维数组用法分析

    Java数组的定义、初始化、及二维数组用法分析 Java数组是Java编程语言中的一种基本数据结构,用于存储同类型的多个元素。以下是Java数组的定义、初始化、及二维数组用法分析。 一、Java数组的定义 Java数组是一种...

    SSH1,JQuery的ajax返回json二维数组处理过程

    在本文中,我们将探讨如何使用SSH1框架与jQuery的AJAX功能来处理JSON二维数组,特别是在实现菜单联动下拉框的场景中。SSH1(Spring、Struts、Hibernate)是Java开发中的一个流行MVC框架组合,而jQuery的AJAX功能则...

    java二维数组删除特定行代码

    本文将深入解析如何在Java中实现对二维数组的特定行进行删除的操作,特别是当某行满足特定条件(如该行末尾的数据个数小于等于1)时。 ### Java二维数组删除特定行 #### 1. 理解问题背景 在给定的代码片段中,...

    java 二维数组

    #### 一、二维数组的概念与定义 在Java中,所谓的“二维数组”实际上是指“元素是一维数组的一维数组”。这种结构可以用来表示矩阵或者表格等具有行和列的数据结构。虽然Java语言并没有提供真正意义上的多维数组...

    java二维数组.pdf

    定义二维数组时,我们需要指定数组的行数和列数。例如,`int[][] a = new int[3][5];` 定义了一个3行5列的二维数组。这里,`a` 是一个引用,指向一个包含3个元素的数组,每个元素本身又是一个长度为5的一维数组。二...

    函数、内存、一维数组、二维数组

    数组操作常见问题  数组脚标越界异常(ArrayIndexOutOfBoundsException) int[] arr = new int[2]; System.out.println(arr[3]); 访问到了数组中的不存在的脚标时发生。  空指针异常(NullPointerException) ...

Global site tag (gtag.js) - Google Analytics