美文网首页
常用java工具方法备忘

常用java工具方法备忘

作者: Albert_d37d | 来源:发表于2022-05-05 09:31 被阅读0次

    package com.qg.lb.comm;

    import java.io.ByteArrayInputStream;

    import java.io.ByteArrayOutputStream;

    import java.io.IOException;

    import java.io.ObjectInputStream;

    import java.io.ObjectOutputStream;

    import java.text.DateFormat;

    import java.text.ParseException;

    import java.text.SimpleDateFormat;

    import java.util.Calendar;

    import java.util.Date;

    import java.util.List;

    import java.util.Random;

    import java.util.UUID;

    public class MyUtil

    {

    public static void Log(String strMsg)

    {

    if (Config.Debug)

    System.out.println(strMsg);

    }

    /**

    * 生成[x, y]之间的随机数

    *

    * @return [x, y]之间的随机数

    */

    public static Integer getRd(Integer start, Integer end)

    {

    int num = (int) (Math.random() * (end - start + 1) + start);

    return num;

    }

    // 返回百分比概率

    public static boolean GetPercentage(int per)

    {

    if (per <= 0)

    return false;

    if (per >= 100)

    return true;

    int num = MyUtil.getRd(1, 100);

    return num >= 1 && num <= per;

    }

    public static String MakeToken()

    {

    return UUID.randomUUID().toString();

    }

    // 获取当前时间

    public static String GetNow()

    {

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    Date date = new Date();

    return format.format(date);

    }

    // 计算几天后的时间

    public static String AfterTimes(String cur, int days)

    {

    // 对当前时间进行转换 括号里面的是转换规则("yyyy-MM-dd HH:mm:ss")

    //        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

    //        Date date = new Date();

    //        date.setTime(System.currentTimeMillis());

    //        Calendar c = Calendar.getInstance();

    //        c.setTime(date);

    //        //5是传的参数 就是说要获取几天后的当前具体时间

    //        c.add(Calendar.DATE, days);

    //        Date d3 = c.getTime();

    //        String date3 = format.format(d3);

    //        return date3;

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    try

    {

    Date date = format.parse(cur);

    Calendar c = Calendar.getInstance();

    c.setTime(date);

    c.add(Calendar.DATE, days);

    Date d3 = c.getTime();

    String date3 = format.format(d3);

    return date3;

    } catch (ParseException e)

    {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    return "";

    }

    // 计算几天后的日期

    public static String AfterDays(int days)

    {

    Date d = new Date();

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

    String currdate = format.format(d);

    Calendar ca = Calendar.getInstance();

    try

    {

    ca.setTime(format.parse(currdate));

    } catch (ParseException e)

    {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    ca.add(Calendar.DATE, days);// num为增加的天数,可以改变的

    d = ca.getTime();

    String enddate = format.format(d);

    return enddate;

    }

    // 是否在天数内

    public static boolean WithinTheLimitOfDay(String begin, String end)

    {

    if (begin.equals("") || end.equals(""))

    return false;

    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");

    String str1 = begin;

    String str2 = end;

    Date date1;

    Date date2;

    try

    {

    date1 = df.parse(str1);

    date2 = df.parse(str2);

    String now = df.format(new Date());

    Date dateNow = df.parse(now);

    if (date1.getTime() <= dateNow.getTime() && date2.getTime() >= dateNow.getTime())

    {

    return true;

    }

    } catch (ParseException e)

    {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    return false;

    }

    // 是否在时间内

    public static boolean WithinTheLimitOfTime(String begin, String end)

    {

    if (begin.equals("") || end.equals(""))

    return false;

    DateFormat df = new SimpleDateFormat("HH:mm");

    String str1 = begin;

    String str2 = end;

    Date date1;

    Date date2;

    try

    {

    date1 = df.parse(str1);

    date2 = df.parse(str2);

    String now = df.format(new Date());

    Date dateNow = df.parse(now);

    if (date1.getTime() <= dateNow.getTime() && date2.getTime() >= dateNow.getTime())

    {

    return true;

    }

    } catch (ParseException e)

    {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    return false;

    }

    // 是否在日期内

    public static boolean WithinTheLimitOfDate(String begin, String end)

    {

    if (begin.equals("") || end.equals(""))

    return false;

    DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");

    String str1 = begin;

    String str2 = end;

    Date date1;

    Date date2;

    try

    {

    date1 = df.parse(str1);

    date2 = df.parse(str2);

    String now = df.format(new Date());

    Date dateNow = df.parse(now);

    if (date1.getTime() <= dateNow.getTime() && date2.getTime() >= dateNow.getTime())

    {

    return true;

    }

    } catch (ParseException e)

    {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    return false;

    }

    public static String GetToday()

    {

    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");

    String today = df.format(new Date());

    return today;

    }

    public static String ToDate(String tm)

    {

    if (!tm.equals(""))

    {

    String[] sp = tm.split(" ");

    if (sp.length > 1)

    {

    return sp[0];

    }

    }

    return "";

    }

    // list 深拷贝

    public static <T> List<T> DeepCpy(List<T> src) throws IOException, ClassNotFoundException

    {

    ByteArrayOutputStream byteOut = new ByteArrayOutputStream();

    ObjectOutputStream out = new ObjectOutputStream(byteOut);

    out.writeObject(src);

    ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray());

    ObjectInputStream in = new ObjectInputStream(byteIn);

    @SuppressWarnings("unchecked")

    List<T> copy_list = (List<T>) in.readObject();

    return copy_list;

    }

    public static String GetInviteCode()

    {

    int maxNum = 36;

    int i;

    int count = 0;

    char[] str = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',

    'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };

    StringBuffer pwd = new StringBuffer("");

    Random r = new Random();

    while (count < 8)

    {

    i = Math.abs(r.nextInt(maxNum));

    if (i >= 0 && i < str.length)

    {

    pwd.append(str[i]);

    count++;

    }

    }

    return pwd.toString();

    }

    }

    相关文章

      网友评论

          本文标题:常用java工具方法备忘

          本文链接:https://www.haomeiwen.com/subject/lyenyrtx.html