java获取当前时间的四种方法代码实例

java获取当前时间的四种方法代码实例

这篇文章主要介绍了java获取当前时间的四种方法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

第一种:Date类

public class DateDemo {
  public static void main(String[] args) {
    Date day = new Date();
    SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(dft.format(day));
  }
}

第二种:System类中的currentTimeMillis方法

public class DateDemo {
  public static void main(String[] args) {
    SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println(dft.format(System.currentTimeMillis()));
  }
}

第三种:Calendar.getInstance()(国际通用)

public class DateDemo {
  public static void main(String[] args) {
    Calendar date = Calendar.getInstance();
    System.out.println(date.getTime());
    //可以单独获取时间
    System.out.println("年:"+date.get(Calendar.YEAR));
    System.out.println("月:"+(date.get(Calendar.MONTH)+1)); //Note:月份从0开始
    System.out.println("日:"+date.get(Calendar.DAY_OF_MONTH));
    System.out.println("时:"+date.get(Calendar.HOUR_OF_DAY));
    System.out.println("分:"+date.get(Calendar.MINUTE));
    System.out.println("秒:"+date.get(Calendar.SECOND));
    //可以修改时间
    //add
    date.add(Calendar.YEAR, -1); // 年份减1
    date.add(Calendar.YEAR, +1); // 年份加1
    //set
    date.set(Calendar.HOUR, 1);//设置时为 13点
    date.set(Calendar.MINUTE, 45);//设置分为 45
  }
}

第四种:jdk1.8LocalDate更安全、更精确也更明确

/获取当前时间 yyyy-MM-dd
    LocalDate today = LocalDate.now();
    // 根据年月日获取日期,12月就是12
    LocalDate date = LocalDate.of(2019,5,6);

    //根据字符串获取
    //严格按照ISO yyyy-MM-dd验证,02不可写成02
    LocalDate endOfFeb = LocalDate.parse("2019-02-28");

    //获取本月第一天
    LocalDate firstDate = today.with(TemporalAdjusters.firstDayOfMonth());

    // 获取本月第2天
    LocalDate secondDate = today.withDayOfMonth(2);

    // 获取本月最后一天,不用计算是28,29,30还是31
    LocalDate lastDate = today.with(TemporalAdjusters.lastDayOfMonth());
    
    // 取下一天:
    LocalDate firstTime = LocalDate.now().plusDays(1);

    // 取2019年1月第一个周一
    LocalDate firstMonday = LocalDate.parse("2019-01-01").with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY));

    // ISO_DATE 只有年月日
    String time = LocalDate.parse("2019-05-05").format(DateTimeFormatter.BASIC_ISO_DATE.ISO_DATE);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。