Gibt es sowieso eine List-Variable im internen oder externen Speicher des Androids-Telefons? Ich weiß, ich kann primitive Daten speichern, bin mir aber nicht sicher.
Danke im Voraus.
Ja genau, du kannst nur Grundelemente speichern, also könntest du so etwas wie folgt:
List<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
StringBuilder csvList = new StringBuilder();
for(String s : list){
csvList.append(s);
csvList.append(",");
}
sharedPreferencesEditor.put("myList", csvList.toString());
Um dann erneut Ihre list
zu erstellen, würden Sie:
String csvList = sharedPreferences.getString("myList");
String[] items = csvList.split(",");
List<String list = new ArrayList<String>();
for(int i=0; i < items.length; i++){
list.add(items);
}
Sie könnten dieses "Serialisieren" in Ihre eigene Klasse einkapseln, indem Sie eine Liste einpacken, um sie nett und aufgeräumt zu halten. Sie könnten auch die Konvertierung Ihrer list
in JSON
betrachten.
Wenn Sie einen Zeichenfolgenwert in Ihrem Programm speichern/abrufen/löschen möchten, ist List
besser als Array
. Hier unten zeige ich Ihnen, wie man es benutzt.
// Declaring List Variable
List<String> Mylist = new ArrayList<String>();
// Adding item to List
Mylist.add(list.size(), "MyStringValue"); //this will add string at the next index
// Removing element form list
Mylist.remove(list.size()-1); //this will remove the top most element from List