J'ai travaillé dans le message soap, et pour analyser la valeur de Webservice, les valeurs sont stockées dans ArrayList.
Exemple: les valeurs sont le nom de l'employé (Siva) et l'ID de l'employé (3433fd), ces deux valeurs sont stockées dans l'arraylist, mais je veux les stocker dans le dictionnaire, comment?
vous pouvez utiliser HashMap comme ceci
Map <String,String> map = new HashMap<String,String>();
//add items
map.put("3433fd","Siva");
//get items
String employeeName =(String) map.get("3433fd");
Vous pouvez utiliser Bundle .
car il propose String à différents types de mappage.
Bundle b = new Bundle();
b.putInt("identifier", 121);
b.putString("identifier", "Any String");
b.putStringArray("identifier", stringArray);
int i = b.getInt("identifier");
...
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText textview = (EditText) findViewById(R.id.editTextHash);
EditText textviewNew = (EditText) findViewById(R.id.editTextHash2);
Map<String, String> map = new HashMap<String,String>();
map.put("iOS", "100");
map.put("Android", "101");
map.put("Java", "102");
map.put(".Net", "103");
String TextString = "";
// Set<E> keys = map.keySet();
Set keys = map.keySet();
System.out.println("keys "+keys);
for (Iterator i = keys.iterator(); i.hasNext();)
{
String key = (String) i.next();
System.out.println("key "+key);
String value = (String) map.get(key);
System.out.println("value "+value);
textview.append(key + " = " + value);
TextString+=(key + " = " + value);
}
//textviewNew.setText(TextString);
// Iterator iterator = map.keySet().iterator();
//
// while (iterator.hasNext())
// {
// String object = (String) iterator.next();
// textview.setText(object);
// }
//
// //textview.setText(map.get("Siva"));
//
// System.out.println(map);
}
}
A Dictionary est une classe abstraite qui mappe les clés aux valeurs et il y a Class Dictionary dans Android refer link vous pouvez trouver une note sur Class Aperçu
N'utilisez pas cette classe car elle est obsolète. Veuillez utiliser l'interface Map pour les nouvelles implémentations.
Une tentative d'insérer une clé nulle ou une valeur nulle dans un dictionnaire entraînera une NullPointerException , mais vous pouvez utiliser l'interface Map , elle fournit exactement la même fonctionnalité d'un dictionnaire.vous pouvez l'utiliser comme ci-dessous
//put values
Map Message = new HashMap();
Message.put("title", "Test message");
Message.put("description", "message description");
Message.put("email", "[email protected]");
//get values
Log.d("get Message","Message title -"+Message.get("title"));
vous pouvez également utiliser une classe personnalisée comme ci-dessous
public class MessageObject {
String title;
String description;
String email;
}
vous pouvez utiliser les Getters et les Setters pour obtenir et mettre des valeurs, pas besoin de se souvenir des noms de clés à chaque fois que vous pouvez obtenir d'autres avantages de cette façon.