Java常用工具方法

做个工具人,记录一下平常用到的一些工具方法,随缘更新

1.判断是包含数字

    /**

     * 判断是包含数字

     * @param company

     * @return

     */

    public  boolean isContainNumber(String company) {

        Pattern p = Pattern.compile("[0-9]");

        Matcher m = p.matcher(company);

        if (m.find()) {

            return true;

        }

        return false;

    }

2.字符串提取数字

    /**
     * 字符串提取数字
     * @param s
     * @return
     */
    public  String stringToNum(String s) {
        String regEx="[^0-9]";  
        Pattern p = Pattern.compile(regEx);  
        Matcher m = p.matcher(s);  
        return m.replaceAll("").trim();
    }

3.日期加1天

    /**
     * 日期加1天
     * @param s
     * @param n
     * @return
     */
    public String addDay(String s, int n) {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

            Calendar cd = Calendar.getInstance();
            cd.setTime(sdf.parse(s));
            cd.add(Calendar.DATE, n);// 增加一天
            // cd.add(Calendar.MONTH, n);//增加一个月

               // cd.add(cd.YEAR, 1);//把日期往后增加一年.整数往后推,负数往前移动
               // cd.add(cd.DAY_OF_MONTH, 1);//把日期往后增加一个月.整数往后推,负数往前移动
              //  cd.add(cd.DATE,1);//把日期往后增加一天.整数往后推,负数往前移动 
               // cd.add(cd.WEEK_OF_MONTH, 1);//把日期往后增加一个月.整数往后推,负数往前移动
               // date=cd.getTime();   //这个时间就是日期往后推一天的结果 

            return sdf.format(cd.getTime());

        } catch (Exception e) {
            return null;
        }
    }

4.日期加n天

    /**
     * 日期加n天
     * @param specifiedDay
     * @param afterDays
     * @return
     */
     public  String getSpecifiedDayAfter(String s,int n){
           Calendar c = Calendar.getInstance();
           Date date=null;
           try {
           date = new SimpleDateFormat("yy-MM-dd").parse(s);
           } catch (Exception e) {
           e.printStackTrace();
           }
           c.setTime(date);
           int day=c.get(Calendar.DATE);
           c.set(Calendar.DATE,day+n);
           String dayAfter=new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
           return dayAfter;
     }

5.计算日期相隔天数

     /**
      * 计算日期相隔天数
      * @param startTime
      * @param endTime
      * @return
      */
     public static int caculateTotalDay(String startDay,String endDay) {
         SimpleDateFormat formatter =   new SimpleDateFormat( "yyyy-MM-dd");
         Long l = 0L;
         try {
             Date date = formatter.parse(startDay);
             Date date1 =  formatter.parse(endDay);
             long ts = date.getTime();
             long ts1 = date1.getTime();
             l = (ts - ts1) / (1000 * 60 * 60 * 24);

         } catch (Exception e) {
             e.printStackTrace();
         }
         return l.intValue();
     }

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值