如何在Android中将LatLng添加到List <latlng>?

时间:2015-05-27 12:21:36

标签: android

我有2个清单。

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]));
    };

我怎么做?

3 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分: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);

答案 2 :(得分:2)

在添加数据之前,您刚刚初始化了ArrayList

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