从Java中的HashMap获取LatLong

时间:2017-12-05 12:19:50

标签: java hashmap

static final HashMap<String, LatLng> BAY_AREA_LANDMARKS = new HashMap<String, LatLng>();

static {
    // Office Location.
    BAY_AREA_LANDMARKS.put("Office", new LatLng(  31.112635, 73.114867));
    // House Location.
    BAY_AREA_LANDMARKS.put("Home", new LatLng(  31.138056, 73.108787));
    //College Location.
    BAY_AREA_LANDMARKS.put("College", new LatLng( 31.104999,73.114727));
    // Uncle's House Location.
    BAY_AREA_LANDMARKS.put("Uncle", new LatLng( 31.137073,73.105472));
    // Code Debuggers Location.
    BAY_AREA_LANDMARKS.put("Code Debuggers", new LatLng( 31.117376,73.117588));
}

有我的哈希位置我希望LatLong Value by string(“College”,“Home”.....)

这是我正在尝试的代码

public void addGeofencesButtonHandler(View view) {
    if (checkPermissions()) {
        Map<String , LatLng> Loc= new HashMap<String, LatLng>();
        LatLng ff =  Loc.get("College"); // return ff = null
        Toast.makeText(MainActivity.this, ff.toString(),Toast.LENGTH_SHORT).show();
    }
}

如何获取Lat和Long值并显示它们?

1 个答案:

答案 0 :(得分:1)

您正在声明新地图,然后尝试从中获取值。你刚刚创建了它,所以它是空的。

Map<String , LatLng> Loc= new HashMap<String, LatLng>();
LatLng ff =  Loc.get("College"); // return ff = null

您需要从第一个代码段中声明的地图中获取值。将以上两行替换为:

LatLng ff = BAY_AREA_LANDMARKS.get("College");