gpt4 book ai didi

Java:对象数组不像非数组对象那样工作

转载 作者:行者123 更新时间:2023-12-01 07:25:50 33 4
gpt4 key购买 nike

我正在使用 JGrasp 编写一个程序,其中tile是一个类。以下代码编译:

        tile ext = new tile();
ext.assignValues(0);
g.setColor(ext.color);
g.fillRect(10+20, 35+20, 20, 20);

但以下情况则不然:

        tile[][] ext = new tile[1][1];
ext[0][0].assignValues(0);
g.setColor(ext[0][0].color);
g.fillRect(10+20, 35+20, 20, 20);

我初始化二维数组是错误的,还是我误解了数组的工作原理。

最佳答案

ext[0][0] 未初始化为 tile[][] ext = newtile[1][1];实例数组的tile(Object一般而言),但在使用这些对象之前,您必须初始化存储在数组索引中的每个对象,因为此处每个元素的默认值为null .

tile ext[0][0]= new tile(); //Have to initialize it first 
//And than use it in your code

我认为您在编译期间不会遇到任何问题,但当您执行尝试操作 null 值的代码时,它会抛出 NullPointerException

关于Java:对象数组不像非数组对象那样工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25015887/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com