有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何获取Arraylist的第一个值

我正在制作地图v2。我想把纬度和经度转换成文本地址。所以我使用Geocoder类来定位地址。现在的问题是,当我使用列表时,它给出了很多令人困惑的位置。可能是位置列表。我只想检索其中的第一个位置,并将该位置传递给另一个活动。我该怎么做?请帮忙。这是紧急情况。下面是我的代码:

  try {
    Geocoder gcd = new Geocoder(this, Locale.getDefault());
      List<Address> addresses = gcd.getFromLocation( dmylats,  dmylong,  1);         

      if (addresses.size() > 0) 
          Toast.makeText(this, "You are at "+addresses,Toast.LENGTH_LONG).show();
} catch (IOException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
}

我只需要列表中的第一个值


共 (3) 个答案

  1. # 1 楼答案

    addresses.get(addresses.size()-1)
    
  2. # 2 楼答案

    try {
                // Get the location manager
    locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
                    Criteria criteria = new Criteria();
                    bestProvider = locationManager.getBestProvider(criteria, false);
                    Location location = locationManager
                            .getLastKnownLocation(bestProvider);
                    double lat = location.getLatitude();
                    double lon = location.getLongitude();
                    Geocoder gc = new Geocoder(this);
                    List<Address> lstAdd = gc.getFromLocation(lat, lon, 1);
                    Address ad = lstAdd.get(0);
                    String str = ad.getAddressLine(0);
                TToast.makeText(this, "Your current location is " + str,
                        Toast.LENGTH_LONG).show();
    
    } catch (Exception e) {}
    
  3. # 3 楼答案

    这可以通过以下方式存档:

    addresses.get(addresses.size()-1)
    

    编辑:在OP编辑之前,标题上写着“lastvalue”

    要回答新问题:

    addresses.get(0)