afkT/DevUtils

SPUtils不好用

kayroc opened this issue · 1 comments

SPUtils总是报java.lang.ClassCastException,搞得都不知道到底存的啥,取得啥了!希望能改改~

afkT commented

你好,这个是 get 转换类型异常,需要检查下 put 的类型和 get 类型是否一致,或者你在明确知道类型,例如 String 可以直接使用 getString(String key)

/**
 * detail: 存储 / 取出 数据类型
 * @author Ttt
 */
enum DataType {
    INTEGER, LONG, BOOLEAN, FLOAT, STRING, STRING_SET
}
    
/**
 * 根据 key 获取数据
 * @param key  保存的 key
 * @param type 数据类型
 * @param <T>  泛型
 * @return 存储的数据
 */
<T> T get(String key, DataType type);

/**
 * 保存数据
 * @param key   保存的 key
 * @param value 保存的 value
 * @param <T>   泛型
 */
<T> void put(String key, T value);