常用java工具方法备忘

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();

}

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容