2015-05-27 2 views
2

У меня есть 2 списка.Как добавить LatLng в список <LatLng> в Android?

double pointY[]={105.45526,105.57364,105.53505,105.45523,105.51962,105.77320} 
double pointX[]={9.99222,9.88347,9.84184,9.77197,9.55501,9.67768,9} 

Я хочу сделать List<LatLng> с LatLng[i] = (pointX[i], pointY[i])

Я следующий код, но он не работает:

List<LatLng> points; 
    for (int i = 0 ; i < pointX.length - 1; i++){ 
     points[i].add(LatLng(pointX[i],pointY[i])); 
    }; 

Как я могу это сделать?

+0

Что вы думаете Эм? –

+4

узнать java ... где новое ключевое слово? – Selvin

+0

Не работает означает, что происходит? – Chandrakanth

ответ

4
List<LatLng> points=new ArrayList<LatLng>(); 
for (int i = 0 ; i < pointX.length; i++){ 
    points.add(new LatLng(pointX[i],pointY[i])); 
}; 
+0

Это не добавит последний элемент списка –

+0

хихи Список точки = новый ArrayList (); для (int i = 0; i

2

Во-первых, вы, похоже, не смогли инициализировать переменную points - вам нужно будет вызвать конструктор new ArrayList<>().

Вы также неправильно добавляете список в цикл и не инициализируете новый LatLng в цикле для каждой новой точки, которую вы пытаетесь поместить в список.

должно работать:

List<LatLng> points = new ArrayList<LatLng>(); 

for (int i = 0 ; i < pointX.length; i++){ 
    points.add(new LatLng(pointX[i],pointY[i])); 
} 

Вы можете получить доступ к объектам в списке следующим образом:

//Some variable to determine which point you require 
int x = 0; 

LatLng latlng = points.get(x); 
+0

спасибо: P –

2

Перед добавлением данных вы просто инициализируется ArrayList

List<LatLng> points=new ArrayList<LatLng>(); 
Смежные вопросы