Date、SimpleDateFormat、Calendar日期相关简单总结

java日期类复习


  System.currentTimeMillis()// 获取从1970年1月1日 0点 到现在经过多少毫秒
  Date date = new Date(); // 获取当前日期
  System.out.println(date); // Sun Aug 08 12:23:03 CST 2088

  Date date1 = new Date(123456789); // 带参构造:把毫秒值转换为时间(也是从1970算起)
  System.out.println(date1);

  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH时mm分ss秒");// 连接符可随意
  sdf.format(date);// 格式化方法 , 把日期转为自定义格式

  Date parseDate = sdf.parse("2020-01-10 22时37分30秒"); // 字符串转换为日期
  System.out.println(parseDate);

  // 日期类
  // Calendar是一个抽象类,无法直接创建对象,但可以通过类名调静态getInstance()方法,
  // 返回 Calendar的一个子类对象(此子类对象是强转成Calendar的,向下转型,多态)
  Calendar c = Calendar.getInstance();

  Date date2 = c.getTime();// getTime 日历类转日期类

  System.out.println(c.get(Calendar.YEAR)); // 年
  System.out.println(c.get(Calendar.MONTH)+1); // 月  西方月0-11 ,东方1-12
  System.out.println(c.get(Calendar.DAY_OF_MONTH)); // 日

  // 日期类年月日的加减
  c.add(Calendar.YEAR,1);
  c.add(Calendar.MONTH,-2);
  c.add(Calendar.DAY_OF_MONTH,-5);
  System.out.println("------------------");

  System.out.println(c.get(Calendar.YEAR)); // 年
  System.out.println(c.get(Calendar.MONTH)+1); // 月  西方月0-11 ,东方1-12
  System.out.println(c.get(Calendar.DAY_OF_MONTH)); // 日


  System.out.println(Integer.valueOf("123")); // valueOf 更高效
  int a= Integer.parseInt("456",16);  // parseInt 也可以用解析16进制或各种进制
  System.out.println(a);
  a= Integer.parseInt("A",16);  // parseInt
  System.out.println(a);

你可能感兴趣的:(java)