2016-10-05 6 views
-2

Если у меня есть простой список < Point2D> объявлен.Инициализировать Point2D в списке <>

Пример:

List<Point2D> listOfPoints; 

/* What I tried */ 
Point2D point1; 
listOfPoints.add(point1); 

Но, как же инициализировать point1, так что я могу иметь координату скажем (3,2)?

+0

Ссылка на приведенную выше ссылку ... это даст вам все инструменты, необходимые для понимания этой ошибки, и исправить ее для всех будущих времен, когда у вас будет это исключение ... – Tunaki

+0

Построение объекта чрезвычайно основная задача. Проведите немного времени на исследования, прежде чем ожидать, что люди проведут время, чтобы помочь вам. – shmosel

ответ

1

Вам необходимо создать экземпляр Point2D. Прямо сейчас, вы добавляете null к вашему listOfPoints. Кроме того, 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); 

Кроме того, когда у вас есть Point2D.Float или Point2D.Double объект, вы можете задать координаты в явном виде, либо путем назначения непосредственно к x и y полей или позвонив по телефону setLocation() и передавая координаты.

+0

Ах. Я понимаю, что вы делаете. Большое спасибо, добрый сэр! – Jackson

1

Вы можете попробовать:

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

или

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

Вы также хотите, чтобы инициализировать ваш список, например

List<Point2D> listOfPoints = new ArrayList<>(); 
listOfPoints.add(point1); 

Просто делать new Point2D(3, 2) не будет работать, как Point2D является абстрактным.

 Смежные вопросы

  • Нет связанных вопросов^_^