1 Math数学类
-
里面都是static方法和属性,可以直接使用
-
提供了一些与属性相关的内容和计算方法,可以是我们轻松完成常见的数学计算。
public static void main(String[] args) { System.out.println(Math.PI); System.out.println(Math.abs(-5)); //绝对值 System.out.println(Math.pow(2,3));//2的3次幂 System.out.println(Math.pow(4,0.5)); //开根号 System.out.println(Math.sqrt(16));//开根号 System.out.println(Math.max(10,6)); //返回一个最大数 System.out.println(Math.min(10,6)); //返回一个最小 System.out.println(Math.ceil(3.14)); //4.0 System.out.println(Math.floor(3.58));//3.0 System.out.println(Math.round(3.16)); //四舍五入(到整数位) System.out.println(Math.random()); //生成一个[0.0~1.0)随机数 }
获得想要的随机数
public static void main(String[] args) {
//获得[0,10)之间的随机数
System.out.println((int)(Math.random() * 10));
//获得[5,10]之间的随机数
System.out.println((int)((Math.random() * 6) + 5));
}
2 Random类
-
是一个用来产生随机结果的类
public static void main(String[] args) { Random r = new Random() ; System.out.println(r.nextBoolean()); System.out.println(r.nextInt()); //整个int范围内随机 System.out.println(r.nextInt(10)); //随机[0,10)之间的整数 }
3 UUID类
-
提供了一个随机方法,可以产生一个32位16进制的近似于唯一的数字
public static void main(String[] args) { UUID uuid = UUID.randomUUID(); System.out.println(uuid.toString().replace("-","")); }
4 日期类
4.1 时区
-
格林尼治时间(标准时间)
-
北京处于东八区 , 标准时间 + 08:00
-
JVM内置了默认的时区, 我们的时区就是亚洲/上海时区
-
java中使用TimeZone表示时区对象
public static void main(String[] args) { TimeZone def = TimeZone.getDefault(); System.out.println(def); System.out.println(def.getID()); System.out.println(def.getRawOffset()/1000/3600); String[] ids = TimeZone.getAvailableIDs(); for(int i=0;i<ids.length;i++){ System.out.println(ids[i]); } TimeZone america = TimeZone.getTimeZone("America/New_York"); System.out.println(america.getRawOffset()/1000/3600); }
4.2 Date日期类
-
使用Date表示一个时间
-
在Date内部使用一个long变量存储 1970/01/01 00:00:00 至 某一个具体时间之间相差的毫秒数
Date date = new Date(); //当前系统时间
Date date = new Date(long) ;//指定的时间 1970 间隔long毫秒后的那个时间
long l = date.getTime(); //获得1970年至 date时间之间相差的毫秒数
date.setTime(long); //重新指定时间 1970 间隔long毫秒后的那个时间
date1.before(date2) ;
date1.after(date2) ;
4.3 DateFormat日期格式类
-
设置日期的格式,可以根据这个格式实现日期与字符串之间的互相转换。
-
JDK中提供了日期格式的表示标识
2020-01-01 12:12:12 ---> yyyy-MM-dd HH:mm:ss
public static void main(String[] args) throws ParseException {
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
String s = format.format(date); //将日期转换成字符串
System.out.println(s);
String s2 = "1987-02-23 03:03:03" ;
Date date2 = format.parse(s2); //将字符串转换成日期
System.out.println(date2);
}