当前位置:主页 > java教程 > Java日期时间以及日期相互转换

如何实现Java日期时间格式转换

发布:2020-01-14 15:16:02 125


给寻找编程代码教程的朋友们精选了Java日期时间格式转换相关的编程文章,网友怀承允根据主题投稿了本篇教程内容,涉及到Java、日期时间、Java日期时间以及日期相互转换相关内容,已被638网友关注,相关难点技巧可以阅读下方的电子资料。

Java日期时间以及日期相互转换

Java日期时间,以及相互转化,供大家参考,具体内容如下

package com.study.string;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class DateBase {

 public static void main(String[] args) throws ParseException {
  /*
   * 获得当前时间
   */
  Date date1 = new Date();
  long long1 = date1.getTime();//date类型,转为 long类型
  System.out.println(date1);//Sat Aug 26 08:36:36 GMT+08:00 2017
  System.out.println(long1);//1503708031359
  
  Calendar cale1 = Calendar.getInstance();
  date1 = cale1.getTime();//calendar 类型 转为 date类型
  long1 = date1.getTime();
  System.out.println(cale1);
  System.out.println(date1);//Sat Aug 26 08:36:36 GMT+08:00 2017
  System.out.println(long1);
  
  /*
   *设置时间 
   */
  long1 += 24*60*60*1000;
  date1.setTime(long1);
  System.out.println(date1);//Sun Aug 27 08:43:26 GMT+08:00 2017
  
  /*
   * 格式化时间日期,无参数的默认格式,有参数的自定义格式。
   * Date -> String 用 format()
   * String -> Date 用 parse()
   */
  SimpleDateFormat sim1 = new SimpleDateFormat();//默认格式:17-8-27 上午8:45
  String time1 = sim1.format(date1);
  System.out.println(time1);//17-8-27 上午8:45 
  Date date11 = sim1.parse(time1);
  System.out.println(date11);
  
  SimpleDateFormat sim2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss sss");
  String time2 = sim2.format(date1);
  System.out.println(time2);//2017-08-27 08:47:58 058
  Date date22= sim2.parse(time2);
  System.out.println(date22);//Sun Aug 27 08:52:08 GMT+08:00 2017
  
  /*
   * 创建指定日期 String 
   * GregorianCalendar
   */
  SimpleDateFormat sim3 = new SimpleDateFormat("yyyy-MM-dd");
  String str1 = "2014-09-27";
  Date date33 = sim3.parse(str1);
  System.out.println(date33);//Sat Sep 27 00:00:00 GMT+08:00 2014
  
  
  GregorianCalendar gre1 = new GregorianCalendar(2015,Calendar.DECEMBER,25);
  Date date44 = gre1.getTime();
  System.out.println(date44);//Fri Dec 25 00:00:00 GMT+08:00 2015
  
  
  Calendar cal2 = Calendar.getInstance();
  cal2.set(Calendar.YEAR, 2017);
  cal2.set(Calendar.MONTH, 7);//月份的数字与 第几个月差1, 8 == Calendar.SEPTEMBER
  cal2.set(Calendar.DATE, 26);// Tue Sep 09 09:04:25 GMT+08:00 2008
//  cal2.set(Calendar.DAY_OF_MONTH, 12);
  System.out.println(cal2.getTime());//Sat Aug 26 09:09:44 GMT+08:00 2017
  
  
  
  /*
   * 获取年月日,星期,时间
   */
  int dayOfweek = cal2.get(Calendar.DAY_OF_WEEK);
  System.out.println(dayOfweek);//7 是星期六
  
  
  /*
   * Calendar 的时间加减
   */
  Calendar cal3 = Calendar.getInstance();
  cal3.add(Calendar.YEAR, 1);
  cal3.add(Calendar.MONTH, -2);
  System.out.println(cal3.getTime());//Tue Jun 26 09:14:11 GMT+08:00 2018
  
  
  /*
   * 
   */
  Calendar cal4 = Calendar.getInstance();
  cal4.set(Calendar.YEAR, 2016);
  cal4.set(Calendar.DATE, 1);
  //每个月的最后 一天
  for(int month = Calendar.JANUARY;month<Calendar.DECEMBER; month++){
    cal4.set(Calendar.MONTH, month);
    System.out.println(cal4.get(Calendar.YEAR)+"年"+(month+1)+"月"+
      cal4.getActualMaximum(Calendar.DATE)+"日");
  }

/*
2016年1月31日
2016年2月29日
2016年3月31日
2016年4月30日
2016年5月31日
2016年6月30日
2016年7月31日
2016年8月31日
2016年9月30日
2016年10月31日
2016年11月30日
   */
  
  //直接创建long 型的时间
  long long2 = System.currentTimeMillis();
  Date daten = new Date(long2);
  System.out.println(daten);//Sat Aug 26 09:41:08 GMT+08:00 2017
 }

}

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


参考资料

相关文章

  • Java synchronized轻量级锁实现过程浅析

    发布:2023-04-06

    这篇文章主要介绍了Java synchronized轻量级锁实现过程,synchronized是Java里的一个关键字,起到的一个效果是"监视器锁",它的功能就是保证操作的原子性,同时禁止指令重排序和保证内存的可见性


  • 怎样使用JavaScript中的setUTCDate()方法

    发布:2020-02-11

    这篇文章主要介绍了JavaScript中的setUTCDate()方法使用详解,是JS入门学习中的基础知识,需要的朋友可以参考下


  • Java将图片组合成PDF文件的代码分享

    发布:2020-02-09

    这篇文章主要为大家详细介绍了Java将图片组合成PDF文件的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


  • Java中的内存泄露代码详细分析

    发布:2019-06-04

    这篇文章主要介绍了Java语言中的内存泄露代码详解,具有一定借鉴价值,需要的朋友可以参考下。


  • 彻底搞懂java并发ThreadPoolExecutor使用

    发布:2023-03-21

    这篇文章主要为大家介绍了彻底搞懂java并发ThreadPoolExecutor使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪


  • jvm--Java中init和clinit的区别点整理

    发布:2020-01-21

    下面小编就为大家带来一篇详谈jvm--Java中init和clinit的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • java构造http请求的几种方式(附源码)

    发布:2023-04-09

    本文主要介绍了java构造http请求的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • java实现的汉字转五笔功能的具体操作总结

    发布:2019-09-02

    这篇文章主要介绍了java实现的汉字转五笔功能,结合具体实例形式分析了java基于字符串遍历与编码转换等操作实现五笔编码获取的相关操作技巧,需要的朋友可以参考下


网友讨论