Java 初始化列表中的点2D<&燃气轮机;

Java 初始化列表中的点2D<&燃气轮机;,java,list,sorting,2d,points,Java,List,Sorting,2d,Points,如果我声明了一个简单的列表 例如: List<Point2D> listOfPoints; /* What I tried */ Point2D point1; listOfPoints.add(point1); 点列表; /*我试过的*/ 点2D点1; 添加点列表(点1); 但是,如何初始化点1,这样我就可以得到(3,2)的坐标?您必须创建点2D的实例。现在,您正在将null添加到点数列表中。另外,listOfPoints未初始化,因此您的代码将生成NullPointerEx

如果我声明了一个简单的列表

例如:

List<Point2D> listOfPoints;

/* What I tried */
Point2D point1;
listOfPoints.add(point1);
点列表;
/*我试过的*/
点2D点1;
添加点列表(点1);

但是,如何初始化
点1
,这样我就可以得到
(3,2)
的坐标?

您必须创建
点2D
的实例。现在,您正在将
null
添加到
点数列表中。另外,
listOfPoints
未初始化,因此您的代码将生成
NullPointerException
。请尝试以下方法:

List<Point2D> listOfPoints = new ArrayList<>(); // or another List implementation class

Point2D point1 = new Point2D.Float(3, 2); // or perhaps Point2D.Double
listOfPoints.add(point1);
List listOfPoints=new ArrayList();//或其他列表实现类
Point2D point1=新的Point2D.Float(3,2);//或者点2D,双倍
添加点列表(点1);
此外,一旦您有了
Point2D.Float
Point2D.Double
对象,您就可以显式地设置坐标,可以直接指定给
x
y
字段,也可以调用
setLocation()
并传递坐标。

您可以尝试:

Point2D point1 = new Point2D.Double(3, 2);

您还需要初始化您的列表,例如

List<Point2D> listOfPoints = new ArrayList<>();
listOfPoints.add(point1);
listOfPoints=newarraylist();
添加点列表(点1);

简单地做
新的Point2D(3,2)
将不起作用,因为Point2D是抽象的。

Ah。我知道你在做什么。非常感谢,好心的先生!请参阅上面的链接。。。它将为您提供理解此错误所需的所有工具,并在将来出现异常时修复它…构造对象是一项极其基本的任务。在期望人们花时间帮助你之前,花一点时间在研究上。
List<Point2D> listOfPoints = new ArrayList<>();
listOfPoints.add(point1);