神刀安全网

工具类之SPUtils

此工具类不是网上大家用烂的那一份,是博主亲自编写,亲自测试,代码简洁清晰,可满足日常开发,不再是采用效率低下的commit来提交,而是apply,至于两者有何不同,大家可以自行search。
Talk is cheap, show me ur code.下面上方法列表和具体代码,开车喽,呜~~

  • SP相关→SPUtils.javaTest
    • SPUtils构造函数 SPUtils
    • SP中写入String类型value putString
    • SP中读取String getString
    • SP中写入int类型value putInt
    • SP中读取int getInt
    • SP中写入long类型value putLong
    • SP中读取long getLong
    • SP中写入float类型value putFloat
    • SP中读取float getFloat
    • SP中写入boolean类型value putBoolean
    • SP中读取boolean getBoolean
    • SP中获取所有键值对 getAll
    • SP中移除该key remove
    • SP中是否存在该key contains
    • SP中清除所有数据 clear

import android.content.Context; import android.content.SharedPreferences;  import java.util.Map;  /**  * <pre>  *     author: Blankj  *     blog  : http://blankj.com  *     time  : 2016/8/2  *     desc  : SP相关工具类  * </pre>  */ public class SPUtils {      private SharedPreferences sp;     private SharedPreferences.Editor editor;      /**      * SPUtils构造函数      *      * @param context 上下文      * @param spName  spName      */     public SPUtils(Context context, String spName) {         sp = context.getSharedPreferences(spName, Context.MODE_PRIVATE);         editor = sp.edit();         editor.apply();     }      /**      * SP中写入String类型value      *      * @param key   键      * @param value 值      */     public void putString(String key, String value) {         editor.putString(key, value).apply();     }      /**      * SP中读取String      *      * @param key 键      * @return 存在返回对应值,不存在返回默认值{@code null}      */     public String getString(String key) {         return getString(key, null);     }      /**      * SP中读取String      *      * @param key          键      * @param defaultValue 默认值      * @return 存在返回对应值,不存在返回默认值{@code defaultValue}      */     public String getString(String key, String defaultValue) {         return sp.getString(key, defaultValue);     }      /**      * SP中写入int类型value      *      * @param key   键      * @param value 值      */     public void putInt(String key, int value) {         editor.putInt(key, value).apply();     }      /**      * SP中读取int      *      * @param key 键      * @return 存在返回对应值,不存在返回默认值-1      */     public int getInt(String key) {         return getInt(key, -1);     }      /**      * SP中读取int      *      * @param key          键      * @param defaultValue 默认值      * @return 存在返回对应值,不存在返回默认值{@code defaultValue}      */     public int getInt(String key, int defaultValue) {         return sp.getInt(key, defaultValue);     }      /**      * SP中写入long类型value      *      * @param key   键      * @param value 值      */     public void putLong(String key, long value) {         editor.putLong(key, value).apply();     }      /**      * SP中读取long      *      * @param key 键      * @return 存在返回对应值,不存在返回默认值-1      */     public long getLong(String key) {         return getLong(key, -1L);     }      /**      * SP中读取long      *      * @param key          键      * @param defaultValue 默认值      * @return 存在返回对应值,不存在返回默认值{@code defaultValue}      */     public long getLong(String key, long defaultValue) {         return sp.getLong(key, defaultValue);     }      /**      * SP中写入float类型value      *      * @param key   键      * @param value 值      */     public void putFloat(String key, float value) {         editor.putFloat(key, value).apply();     }      /**      * SP中读取float      *      * @param key 键      * @return 存在返回对应值,不存在返回默认值-1      */     public float getFloat(String key) {         return getFloat(key, -1f);     }      /**      * SP中读取float      *      * @param key          键      * @param defaultValue 默认值      * @return 存在返回对应值,不存在返回默认值{@code defaultValue}      */     public float getFloat(String key, float defaultValue) {         return sp.getFloat(key, defaultValue);     }      /**      * SP中写入boolean类型value      *      * @param key   键      * @param value 值      */     public void putBoolean(String key, boolean value) {         editor.putBoolean(key, value).apply();     }      /**      * SP中读取boolean      *      * @param key 键      * @return 存在返回对应值,不存在返回默认值{@code false}      */     public boolean getBoolean(String key) {         return getBoolean(key, false);     }      /**      * SP中读取boolean      *      * @param key          键      * @param defaultValue 默认值      * @return 存在返回对应值,不存在返回默认值{@code defaultValue}      */     public boolean getBoolean(String key, boolean defaultValue) {         return sp.getBoolean(key, defaultValue);     }      /**      * SP中获取所有键值对      *      * @return Map对象      */     public Map<String, ?> getAll() {         return sp.getAll();     }      /**      * SP中移除该key      *      * @param key 键      */     public void remove(String key) {         editor.remove(key).apply();     }      /**      * SP中是否存在该key      *      * @param key 键      * @return {@code true}: 存在<br>{@code false}: 不存在      */     public boolean contains(String key) {         return sp.contains(key);     }      /**      * SP中清除所有数据      */     public void clear() {         editor.clear().apply();     } }

如果该工具类依赖其他工具类,都可以在我的Android开发人员不得不收集的代码(持续更新中)中找到。

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » 工具类之SPUtils

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址