Java常用的util--TimeUtil(判断是否为数字类型,获取当前日期前后几天的日期等)

此Util功能包括判断是否为数字类型,获取当前日期前后几天的日期等。
直接上代码

package redisTest;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * Created by dongzy on 2017/10/23.
 */
public class TimeUtil {
    /**
     * 获取过去第几天的日期
     * **注意:里面的Calendar.DAY_OF_YEAR,是你获取的时间类型,时、分、秒、年自己按需取**
     * @param past
     * @return
     */
    public static String getPastDate(int past) {
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - past);
        Date today = calendar.getTime();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        String result = format.format(today);
        return result;
    }

    /**
     * 获取未来 第 past 天的日期
     * @param past
     * @return
     */
    public static String getFetureDate(int past) {
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.SECOND, calendar.get(Calendar.SECOND) + past);
        Date today = calendar.getTime();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        String result = format.format(today);
        return result;
    }
    public static Date getFetureDates(int past,int type) {
        Calendar calendar = Calendar.getInstance();
        calendar.set(type, calendar.get(type) + past);
        Date today = calendar.getTime();
        return today;
    }
    /**
     * 判断是否是数字(小数)
     * @param str
     * @return
     */
    public static boolean isNumeric(String str) {
        if(str == null){
            return false;
        }
        Pattern pattern = Pattern.compile("-?[0-9]+\\.?[0-9]*");
        Matcher isNum = pattern.matcher(str);
        if (!isNum.matches()) {
            return false;
        }
        return true;
    }
}

你可能感兴趣的:(JAVA)