java - 处理 - 简单空指针错误

标签 java processing

我在处理代码中创建了一个自定义对象数组,然后继续初始化它。但是,由于某种原因,我在以下位置遇到了空指针异常:objectArray[i].siteID = 5;

我花了过去 2 个小时试图找到有关如何解决此问题的信息,但语法似乎是正确的!

代码:

class TtalkObject{
  int siteID = 0;
  String URL = "test";
  int commentNum = 5;
  int averageLength = 5;

}

PFont f;
TtalkObject[] objectArray;
int whatObjectPart = 0;
int whatObject = 0;

void setup()
{
    size(300,300);
    f=createFont("Arial",16,true);
    objectArray = new TtalkObject[50];

    for (int i = 0; i < 50; i ++){
        objectArray[i].siteID = 5;
        objectArray[i].URL = "test";
        objectArray[i].commentNum = 10;
        objectArray[i].averageLength = 10; 
    }

}

最佳答案

objectArray = new TtalkObject[50]; //you have initilized array of 50 reference

但这并不意味着每 50 个引用都指向一个对象

您需要为每个对象创建对象。

成功

objectArray = new TtalkObject[50]; 
for (int i = 0; i < 50; i ++){
 objectArray[i] = new TtalkObject();// or some other preferred initialization
 objectArray[i].siteID = 5;

关于java - 处理 - 简单空指针错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5814773/

相关文章:

java - 在eclipse中使用minim。音乐文件放在哪里?

java - 使用 JSOUP 获取 HTML 字符串中的第一个有效图像

java - 字符之间的异或运算

java - 处理 controlP5 使用过多内存

java - 如何在一个文件中写入多个LinkLists并将LinkedLists读入LinkedList的ArrayList?

java - 相交圆重叠

java - 如何从 jar 文件加载 Spring 上下文 xml

java - url 中的大字符串作为参数 carte pentaho

java - 为什么我的快速排序有时会出现堆栈溢出?

java - 如何使用mousePressed点击一次播放,点击两次停止?