sharedpreferences存储数组
在Android中,SharedPreferences是一种用于存储简单键值对数据的轻量级机制。要在SharedPreferences中存储数组,可以将数组转换为字符串,然后将字符串存储在SharedPreferences中。下面是一个简单的示例:
```java
t.Context;
t.SharedPreferences;
le.gson.Gson;
flect.TypeToken;
import flect.Type;
import java.util.ArrayList;
import java.util.List;
public class SharedPreferencesManager{
private static final String PREFERENCE_NAME="MyPreferences";
private static final String KEY_ARRAY="arrayKey";
//存储数组
public static void saveArray(Context context,List<String>array){
SharedPreferences sharedPreferences=
SharedPreferences.Editor editor=sharedPreferences.edit();
//使用Gson将数组转换为字符串
Gson gson=new Gson();
String Json(array);
/
/存储字符串
editor.putString(KEY_ARRAY,arrayString);
editor.apply();
}
//读取数组
public static List<String>loadArray(Context context){
SharedPreferences sharedPreferences=
//获取存储的字符串
String String(KEY_ARRAY,"");
//使用Gson将字符串转换为数组
Gson gson=new Gson();
Type type=new TypeToken<List<String>>(){}.getType();
List<String>array=gson.fromJson(arrayString,type);
//如果存储的字符串为空,返回一个新的空数组
if(array==null){
return new ArrayList<>();
}
return array;
}
}
```
上述代码使用了Google的Gson库来将数组转换为字符串并反之。请确保将Gson库添加到你的项目中。你可以在`adle`文件中的dependencies部分添加以下依赖:
```gradle
le.code.gson:gson:2.8.9'
```
使用时,你可以调用`saveArray`方法来存储数组,调用`loadArray`方法来读取数组。例如:
```java
List<String>myArray=new ArrayList<>();
myArray.add("Item1");
myArray.add("Item2");
SharedPreferencesManager.saveArray(this,myArray);
List<String>loadedArray=SharedPreferencesManager.loadArray(this);将数组格式的字符串转换成数组
```
这个例子中存储和读取的是字符串数组,你可以根据需要修改代码以适应不同类型的数组。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论