我是 Java 新手,所以概念和术语很模糊,但我正在尝试!我需要创建一个类,该类将获取字符串中的数据,对其进行解析并返回一个具有可以从主类访问的成员属性的对象(数组)。我读过这比拥有多个索引数组(如pointx[]
, pointy[]
,pointz[]
等)更好的解决方案,尤其是在您需要执行交换或排序等操作时。
所以,我想用 , 等从 main 访问数组对象的成员test[0].x
。test[100].y
但是,我很沮丧地得到了一个Exception in thread "main" java.lang.NullPointerException
,我不明白如何继续。
这是我从 main 调用 parse 的方式:
parse a = new parse();
parse[] test = a.convert("1 2 3 4 1 2 3 4 1 2 3 4"); // <- ** error here **
System.out.printf("%.2f %.2f %.2f %d\n", test[0].x, test[0].y, test[0].z, test[0].r);
这是解析类:
public class parse {
parse[] point = new parse[1000];
public float x;
public float y;
public float z;
public int r;
parse() {
}
public parse[] convert(String vertices) {
// parse string vertices -> object
point[0].x = 10; // <- ** error here **
point[0].y = 100;
point[0].z = 50;
point[0].r = 5;
return point;
}
}
提前感谢您对我的解析类和任何相关的 java 指针的任何帮助,以继续我的学习 java 和享受编程!