为了账号安全,请及时绑定邮箱和手机立即绑定

使用函数将元素添加到类数组。处理3中的“绘画”

使用函数将元素添加到类数组。处理3中的“绘画”

qq_遁去的一_1 2021-04-08 13:10:03
我正在尝试使用Processing 3创建一个“ Paint”应用程序,并且我想添加按钮来更改颜色(以后用于画笔,大小等)。我被卡住了,因为我不断得到NullPointerException将按钮添加到我的数组的提示。(我知道我可以在创建不带数组的每个按钮之后只要求mouseX和Y,但是对我来说似乎有点不专业,并且随着时间的推移会变得非常混乱。)错误:第24行->“ allButtons [counter] .name = Name;”*旁注:我对Processing / Java xd相当陌生
查看完整描述

1 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

当创建这样的数组时:

Button[] allButtons = new Button[100];

您正在创建一个可以容纳100个Button实例的数组。但是该数组开始为空。尝试做这样的事情:

println(allButtons[0]);

您会看到输出了null,这意味着该值基本上为空。您实际上尚未Button向阵列添加任何实例。这就是为什么会出现错误的原因:因为您正在尝试使用不存在的值。

要将实例添加到数组,您可以执行以下操作:

allButtons[0] = new Button();

在这一点上,使用该值将是安全的:

allButtons[0].name = "cancel";

顺便说一句,您可能会考虑只使用anArrayList而不是数组。或者利用Processing的数组函数,该函数允许您向数组中添加元素,而不是创建大小为100的数组。

另外,将来请尝试使用正确的命名约定。变量应以小写字母开头,类应以大写字母开头。这使您的代码更容易阅读。


查看完整回答
反对 回复 2021-04-21
  • 1 回答
  • 0 关注
  • 152 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信