4

私はこのメソッド()を持っています:

  private List<? extends Map<String, String>> creaListaDeGrupos() {

      ArrayList resultado_padre = new ArrayList();
      for (int i = 0; i < listadoPartidas.getPartidas().size(); i++) {
          HashMap<String, String> padre = new HashMap<String, String>();
          padre.put("posicionLista", posicionlista.get(i));
          padre.put("codigo", codigoBaremo.get(i));
          padre.put("descripcionBaremo", descripcionBaremoPadre.get(i));
          padre.put("cantidad", cantidad.get(i));
          padre.put("importe", importe.get(i));
          padre.put("estado", estado.get(i));
          padre.put("observaciones", observaciones.get(i));
                    resultado_padre.add(padre);
      }
return resultado_padre
}

そしてリントは私にエラーを返します:

ArrayList は生の型です。ジェネリック型 ArrayList への参照はパラメーター化する必要があります

しかし、私はできません

ArrayList<String> resultado_padre = new ArrayList();

これは文字列の配列リストではないため、bust の型は何になりますか?

4

3 に答える 3

2

返されるのと同じ型を作成してみることができます:

List<HashMap<String, String>> = new ArrayList<HashMap<String, String>>();

実装タイプを宣言する必要はありませんArrayList。インターフェイスはより一般的であるため、変数を具象型として宣言するときは、Listこれが必要かどうか自問してください。インターフェイスに対するプログラミングを参照 してください

于 2012-10-24T08:59:01.463 に答える
0

そうなるArrayList<HashMap<String, String>>

于 2012-10-24T08:59:14.263 に答える
0
 private List<Map<String, String>> creaListaDeGrupos() { 

            List<Map<String, String>> resultado_padre = new ArrayList<Map<String, String>>() ; 
            for (int i = 0; i < listadoPartidas.getPartidas().size(); i++) { 
                Map<String, String> padre = new HashMap<String, String>(); 
                padre.put("posicionLista", posicionlista.get(i)); 
                padre.put("codigo", codigoBaremo.get(i)); 
                padre.put("descripcionBaremo", descripcionBaremoPadre.get(i)); 
                padre.put("cantidad", cantidad.get(i)); 
                padre.put("importe", importe.get(i)); 
                padre.put("estado", estado.get(i)); 
                padre.put("observaciones", observaciones.get(i)); 
                resultado_padre.add(padre); 
            } 
return resultado_padre 
} 
于 2012-10-24T08:57:32.983 に答える