Math:略
Arrays
//数组是引用类型,所以通过sort之后,会直接影响实参 Array.sort(arr) //sort是重载的,也可以通过传入一个Comparator接口实现排序,实现了Comparator接口的匿名内部类,实现compare方法 Integer a = {1,2,3,4}; Arrays.sort(a, new Comparator<Integer>() { @Override public int compare(Integer o1, Integer o2) { return o1 - o2; } });
略
System
BigInteger, BigDecimal:略
Date:第一代日期类
package example18; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * @author mtl121 * @version 1.0 */ public class Date01 { public static void main(String[] args) throws ParseException { //使用的是java.util.Date,而不是java.sql.Date(数据库使用) Date d1 = new Date(); System.out.println("当前日期" + d1);//默认输出是按照国外的格式 Date d2 = new Date(9234567);//通过毫秒数获取时间 System.out.println(d2); System.out.println(d1.getTime());//获取时间对应的毫秒数 //使用SimpleDateFormat对象,按照指定的数据格式规范Date对象 //格式的字母都是规定好的 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss E"); String format = sdf.format(d1); System.out.println(format); //将一个格式化的String 转成date对象,String的格式和sdf的格式要一致,否则会报转换异常 String s = "1996年01月01日 10:20:30 星期一"; Date parse = sdf.parse(s); System.out.println(parse); } }
Calender:第二代日期类 是个抽象类
import java.util.Calendar; /** * @author mtl121 * @version 1.0 */ public class Calendar01 { public static void main(String[] args) { //创建日历类对象, Calendar c = Calendar.getInstance(); System.out.println(c); //获取日历对象的字段 System.out.println("年:" + c.get(Calendar.YEAR)); //这里为什么要 + 1, 因为 Calendar 返回月时候,是按照 0 开始编号 System.out.println("月:" + (c.get(Calendar.MONTH) + 1)); System.out.println("日:" + c.get(Calendar.DAY_OF_MONTH)); //如果我们需要按照 24 小时进制来获取时间, Calendar.HOUR ==改成=> Calendar.HOUR_OF_DAY System.out.println("小时:" + c.get(Calendar.HOUR)); System.out.println("分钟:" + c.get(Calendar.MINUTE)); System.out.println("秒:" + c.get(Calendar.SECOND)); //Calender 没有专门的格式化方法,所以需要程序员自己来组合显示 System.out.println(c.get(Calendar.YEAR) + "-" + (c.get(Calendar.MONTH) + 1) + "-" + c.get(Calendar.DAY_OF_MONTH) + " " + c.get(Calendar.HOUR_OF_DAY) + ":" + c.get(Calendar.MINUTE) + ":" + c.get(Calendar.SECOND) ); } }
第三代日期类:LocalDate(年月日), LocalTime(时分秒), LocalDateTime(年月日时分秒) jdk8后引入
import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; import java.time.format.DateTimeFormatter; /** * @author mtl121 * @version 1.0 */ public class LocalDate_ { public static void main(String[] args) { LocalDateTime ldt = LocalDateTime.now(); System.out.println(ldt); //使用 DateTimeFormatter 对象来进行格式化 DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String format = dateTimeFormatter.format(ldt); System.out.println("格式化的日期=" + format); System.out.println("星期 = " + ldt.getDayOfWeek()); System.out.println("一年中的第几天" + ldt.getDayOfYear()); System.out.println("年 = " + ldt.getYear()); System.out.println("月 = " + ldt.getMonth()); System.out.println("月 = " + ldt.getMonthValue()); System.out.println("日 = " + ldt.getDayOfMonth()); System.out.println("时 = " + ldt.getHour()); System.out.println("分 = " + ldt.getMinute()); System.out.println("秒 = " + ldt.getSecond()); //提供了plus 和 minus方法对当前时间进行增减 LocalDateTime localDateTime = ldt.plusDays(11);//11天后的时间 ldt.minusMinutes(150);//150分钟之前的时间 LocalTime now = LocalTime.now();//时分秒 LocalDate now1 = LocalDate.now();//年月日 } }
Instant 时间戳
public class LocalDate_ { public static void main(String[] args) { Instant now = Instant.now();//获取当前时间戳 //instant转date Date from = Date.from(now); //date 转instant Instant instant = from.toInstant(); } }