天天看點

常用方法

常用方法

一、時間類

1.擷取目前月的第一天和最後一天

public List<String> getMonthDate(Date date) {
        List<String> monthDate = new ArrayList<>();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        String firstday, lastday;
        // 擷取前月的第一天
        Calendar cale = Calendar.getInstance();
        cale.setTime(date);
        cale.add(Calendar.MONTH, 0);
        cale.set(Calendar.DAY_OF_MONTH, 1);
        firstday = format.format(cale.getTime());
        // 擷取前月的最後一天
        cale = Calendar.getInstance();
        cale.add(Calendar.MONTH, 1);
        cale.set(Calendar.DAY_OF_MONTH, 0);
        lastday = format.format(cale.getTime());
        monthDate.add(firstday);
        monthDate.add(lastday);
        return monthDate;
    }
           

2.擷取目前月的天數并統計出每一天

public List<String> getDays(String startTime, String endTime) {

        // 傳回的日期集合
        List<String> days = new ArrayList<String>();

        //yyyy-MM-dd HH:mm:ss
        //yyyy-MM-dd
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date start = dateFormat.parse(startTime);
            Date end = dateFormat.parse(endTime);

            Calendar tempStart = Calendar.getInstance();
            tempStart.setTime(start);

            Calendar tempEnd = Calendar.getInstance();
            tempEnd.setTime(end);
            tempEnd.add(Calendar.DATE, +1);// 日期加1(包含結束)
            while (tempStart.before(tempEnd)) {
                days.add(dateFormat.format(tempStart.getTime()));
                tempStart.add(Calendar.DAY_OF_YEAR, 1);
            }

        } catch (ParseException e) {
            e.printStackTrace();
        }

        return days;
    }
           

3.擷取兩個日期相差的天數

public int getIntervalDays(Date startDate, Date endDate) {
        return (int) Math.ceil(Math.abs(startDate.getTime() - endDate.getTime()) / 86400000);
    }
           

1.描述

代碼塊
           

一、字元串類

1.脫敏操作

public static String nickNameMasking(String nickName) {
        if (null!=nickName) {
            int length = nickName.length();
            if (length == 1) {
                return maskReplce(nickName, 0, 1);
            } else if (length == 2) {
                return maskReplce(nickName, 1, 2);
            } else {
                return maskReplce(nickName, 1, length - 1);
            }
        }
        return "*";
    }
    public static String maskReplce(String str, int start, int end) {
        int i = end - start;
        StringBuffer maskStr = new StringBuffer();
        for (int j = 0; j < i; j++) {
            maskStr.append("*");
        }
        StringBuilder sb = new StringBuilder(str);
        sb.replace(start, end, maskStr.toString());
        return sb.toString();
    }
           

代碼塊
           

代碼塊
           

代碼塊
           

代碼塊
           

繼續閱讀