跨月判断工具类(自用)

/*
* 用于判断月份改变,清空月平均数据
* */
public class MonthCleanManager {

    private String MONTH_CLEAN_MANAGER_TAG="month.clean.manager.tag";
    private static MonthCleanManager monthCleanManager;
    public static MonthCleanManager getInstance(){
        if (monthCleanManager==null)monthCleanManager=new MonthCleanManager();
        return monthCleanManager;
    }
    private MonthCleanManager() { }

    private HashMap<String,String> tagHash=new HashMap<>();

    //执行isMonthChange判断之前必须要有初始化
    public void initData(Context context){
        String jsonStr=SharePreUtil.getStringValue(context,MONTH_CLEAN_MANAGER_TAG,"{}");
        if (jsonStr.equals("{}")){
            tagHash.put("tag","200001");
        }else {
            try {
                JSONObject jsonObject=new JSONObject(jsonStr);
                String content=jsonObject.getString("tag");
                tagHash.put("tag",content);
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    }

    /**
     * 判断月份改变。如:1月变为2月 return true
     * @param context
     * @param time 格式必须是型如 202012 的格式
     * @return
     */
    public boolean isMonthChange(Context context,String time){
        if (tagHash.containsKey("tag")){
            Log.d("fxHou","当前时间:"+time);
            Log.d("fxHou","上次时间:"+tagHash.get("tag"));
            //月份叠加
            if (Integer.parseInt(time)>Integer.parseInt(tagHash.get("tag"))){
                //存储当前年月
                putTag(context,time);
                return true;
            }else {
                return false;
            }
        }else {
            return true;
        }
    }

    private void putTag(Context context,String time){
        tagHash.put("tag",time);
        String content="{tag=\""+time+"\"}";
        SharePreUtil.setStringValue(context,MONTH_CLEAN_MANAGER_TAG,content);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绝命三郎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值