ArrayList 双精度

ArrayList Double

我遇到了这个错误

java.lang.NumberFormatException: Invalid double: "-20.528899,"

我正在使用网络服务从 bd 获取纬度和经度,并显示在地图中。 我无法将纬度和经度值传递给列表 我在数据库的同一列保存经纬度,所以这个字段应该是 "lat, long" 例如“-20.528899,-47.438933”,我需要在列表中解析它...我可以这样做吗?

public List<Localizacoes> buscarLocalizacoes(){

    List<Localizacoes> lista = new ArrayList<Localizacoes>();

    SoapObject buscarLocalizacoes = new SoapObject(NAMESPACE, BUSCAR);

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

    envelope.setOutputSoapObject(buscarLocalizacoes);

    envelope.implicitTypes = true;

    HttpTransportSE http = new HttpTransportSE(URL);

    try {
        http.call("uri:" + BUSCAR, envelope);

        Vector<SoapObject> resposta = (Vector<SoapObject>) envelope.getResponse();

        for (SoapObject soapObject : resposta){
            Localizacoes loc = new Localizacoes();

            loc.setId(Integer.parseInt(soapObject.getProperty("id").toString()));
            loc.setNome(soapObject.getProperty("nome").toString());
            loc.setDescricao(soapObject.getProperty("descricao").toString());
            loc.setPosicao(soapObject.getProperty("posicao").toString()); // error in this line

            lista.add(loc);
        }

    }  catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return null;
    }

    return lista;
}

activity

dao = new LocalizacoesDAO(context);
    List<Localizacoes> lista = dao.buscarLocalizacoes();

    Log.d("Teste Buscar", lista.toString());

 public void setPosicao(LatLng poLatLng) {
    this.poLatLng = poLatLng;
    this.posicao = String.valueOf(poLatLng.latitude) + " " + String.valueOf(poLatLng.longitude);
}

public void setPosicao(String posicao) {
    this.posicao = posicao;
    String[] pos = posicao.split(" ");
    this.poLatLng = new LatLng(Double.valueOf(pos[0]), Double.valueOf(pos[1]));
}

有人能帮我吗?

更改 setPosicao(String) 方法中的以下行

String[] pos = posicao.split(" ");

INTO

String[] pos = posicao.split(", ");

(因为字符串中有一个“,”和一个“”)