Превратить arraylist из string в arraylist

#java #android #arrays #json #sharedpreferences

#java #Android #массивы #json #sharedpreferences

Вопрос:

Чтобы сохранить arraylist в Android Studio с помощью JSON, он превращается в строку, поэтому при его извлечении мне нужно преобразовать его обратно в arraylist. Arraylist содержит объекты. Или есть способ сохранить arraylists с общими настройками как arraylist, а не как строку.

 SharedPreferences accountReader = getSharedPreferences("storedAccounts",MODE_PRIVATE);
SharedPreferences.Editor accountEditor = getSharedPreferences("storedAccounts",0).edit();

ArrayList<userAccount> accountsList = new ArrayList<userAccount>();

Gson gson = new Gson();
String json = accountReader.getString("accounts","");

if(json.isEmpty() == false){ 
   //repopulate accountsList with the stored values 
}

userAccount newEntry = new userAccount();
newEntry.id = id;
newEntry.username = username;
newEntry.password = password;
newEntry.url = url;
newEntry.note = note;

accountsList.add(newEntry);

Gson gsonTwo = new Gson();

String jsonTwo = gsonTwo.toJson(accountsList);
accountEditor.putString("accounts",jsonTwo);
accountEditor.apply();
accountEditor.commit();
  

Ответ №1:

Вы можете попробовать что-то вроде этого

 List<String> yourList = new ArrayList<String>(Arrays.asList(yourString.split(",")))