2010-08-26 7 views

risposta

4

La tua domanda è come chiedere "Ho questa borsa di roba - dovrei trasferire la roba in una scatola, un secchio, un barile o un bidone?".

Senza sapere cosa sia la "roba", non possiamo rispondere facilmente alla domanda.

Le opzioni generali sono di utilizzare un database (forse in realtà eliminando lo ArrayList in primo luogo) o la persistenza in un file (serializzazione, XML, JSON e così via).

In generale, un database SQLite presenta vantaggi, in quanto è transazioni di utilizzo e sarà generalmente più robusto rispetto alla semplice scrittura del proprio file. Tuttavia, ci sono cose che il tuo ArrayList potrebbe immagazzinare che potrebbe non funzionare bene in un database. Naturalmente, ci sono cose che il tuo ArrayList potrebbe immagazzinare che potrebbe non essere nemmeno in grado di essere persistente (ad es. Un socket, un widget).

+0

my ArrayList contiene un oggetto base che ottiene e imposta le stringhe. Detto ciò qual è l'approccio migliore? –

+0

Immagino di convertirlo come "GSON" e la memorizzazione come file sarà il modo più semplice –

2

Non ho familiarità con Android SDK, ma sono con Java. Una cosa che puoi fare facilmente è serializzare ArrayList. Quindi, quando lo rileggi, sarà un oggetto ArrayList che puoi usare prontamente come se lo avessi appena creato.

+2

Intro to Serialization Java: http://java.sun.com/developer/technicalArticles/Programming/serialization/ –

+0

Si prega di non serializzare. Utilizzare un database o il riferimento condiviso – Falmarri

+0

puoi spiegare serializzazione vs db/sharedpref? –