In Java, guardando l'interfaccia NamedNodeMap, come si esegue l'iterazione con i generici? Sembra di usare Nodo piuttosto che String, ma io non sono così sicuro come utilizzare gli oggetti Nodo ...foreach iterazione generica di NamedNodeMap
NamedNodeMap namedNodeMap = doc.getAttributes();
Map<String, String> stringMap = (Map<String, String>) namedNodeMap;
for (Map.Entry<String, String> entry : stringMap.entrySet()) {
//key,value stuff here
}
Sì, posso vedere come iterare senza l'utilizzo di farmaci generici e con un regolare ciclo for, ma Mi piacerebbe usare l'idioma sopra? per le mappe. Ovviamente, il problema sembra essere che, nonostante il nome, NamedNodeMap non implementa effettivamente l'interfaccia Mappa! :(
Immagino che devo solo morso il proiettile qui e fare qualcosa di simile:?.
/*
* Iterates through the node attribute map, else we need to specify specific
* attribute values to pull and they could be of an unknown type
*/
private void iterate(NamedNodeMap attributesList) {
for (int j = 0; j < attributesList.getLength(); j++) {
System.out.println("Attribute: "
+ attributesList.item(j).getNodeName() + " = "
+ attributesList.item(j).getNodeValue());
}
}
non c'è niente di più bello
Non è che molto bello? Voglio dire che è un ciclo su ciascun nodo di attributo! – dacwe