2016-05-30 15 views
1

Ich erstelle eine App und ich muss Hunderte von Strings speichern, die aufgerufen oder in if/else Funktionen verwendet werden können. Ich habe über SQLite nachgedacht, um eine Ladung von ihnen zu halten, aber ich bin nicht sehr Erfahrung damit, und ich bin nicht sehr sicher, wie ich Strings darin manuell speichern kann. Gibt es eine einfachere Möglichkeit, viele verschiedene Strings zu speichern, als ein großes Array oder eine Datenbank zu verwenden?Java/Android - Der effizienteste Weg, um viele Variablen zu speichern

+0

Datenbanken und Dateisysteme sind für große Datenspeicher gedacht. Wenn Sie große Daten im Speicher speichern, würde dies zu einem Leistungseinbruch führen. Da die Daten groß sind, können Sie einen Teil davon mit Hilfe von Array oder JSON im Speicher ablegen oder auf Basis Ihres Codeflusses ablegen und nach bestimmten Regeln wie LRU usw. aktualisieren. Dies ist nur ein Vorschlag Von meiner Seite aus. Keine konkrete Antwort. –

+0

Danke für die Antwort. Ich werde wahrscheinlich eine Datenbank benutzen müssen, aber ich frage hauptsächlich, ob es andere Mittel gibt, dies zu erreichen. –

Antwort

1

Sie müssen sich fragen, wie Sie diese Zeichenfolgen verwenden werden. Werden Sie sie alle einmal in den Speicher laden, wenn die App gestartet wird, oder ziehen Sie während des gesamten Lebenszyklus der Anwendung ständig einzelne Teile an? Wenn Ihre Antwort die letztere ist, dann wäre eine praktikable Option in Android SharedPreferences, die ein Schlüssel/Wert-Paar-Format verwendet, um Daten auf dem Gerät zu speichern. Wenn Ihre Antwort die vorherige ist, dann wäre wahrscheinlich eine Datenbank (SQLite) besser.

See Google's documentation für weitere Informationen zu SharedPreferences.

+0

Das ist interessant, ich habe noch nie von SharedPreferences gehört. Meine Situation ist die spätere und ich muss zufällige Strings während der Nutzung der App nicht alle auf einmal ziehen. –

+0

@EoinCoogan Dann würde ich definitiv vorschlagen, einen Blick darauf zu werfen. Ich bin nicht sicher, wie die Strings, die Sie benötigen, verwandt sind, aber Sie können sie entweder einzeln mit 'putString (String key, String value) speichern 'oder wenn Sie verwandte Gruppen von Strings haben, die Sie zusammen speichern möchten, können Sie' putStringSet (String key, Set Werte) '. – bwegs

+0

Vielen Dank für Ihre Hilfe. –

Verwandte Themen