Date、Calendar、DateFormat类

Date类与Calendar类之间的转换

 1 package date;
 2
 3 import java.util.Calendar;
 4 import java.util.Date;
 5
 6 public class DateDemo {
 7
 8     public static void main(String[] args) {
 9         /**
10          * 可以直接输出Date,不可以直接输出Calendar
11          * 已知当前Date类的日期now,Calendar类的日期calendar,
12          * 1.将Date--->Calendar,用calendar.setTime(now);
13          * 2.将Calendar--->Date,那么now=calendar.getTime();
14          */
15         Date now=new Date();
16         Calendar calendar=Calendar.getInstance();
17         long now1=System.currentTimeMillis();
18         long now2=now.getTime();
19         long now3=calendar.getTimeInMillis();
20         System.out.println("now :"+now);
21         System.out.println("calendar.Year :"+calendar.get(Calendar.YEAR));
22         System.out.println("now1 :"+now1);
23         System.out.println("now2 :"+now2);
24         System.out.println("now3 :"+now3);
25
26         calendar.add(Calendar.YEAR,-19);
27         System.out.printf("%d-%d-%d\n",calendar.get(Calendar.YEAR),
28                 calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH));
29         //Date-->Calendar
30         Calendar c1=Calendar.getInstance();//调用Calendar类中的静态方法getInstance()来得到一个Calendar对象
31         c1.setTime(now);
32
33         //Calendar-->Date
34         Date birth=calendar.getTime();
35         System.out.println("birth :"+birth);
36
37         System.out.println(birth.toLocaleString());
38
39     }
40
41 }

输出如下内容:

now :Sun Dec 30 11:32:57 CST 2018
calendar.Year :2018
now1 :1546140777528
now2 :1546140777390
now3 :1546140777468
1999-11-30
birth :Thu Dec 30 11:32:57 CST 1999
1999-12-30 11:32:57

DateFormat类:

 1 package date;
 2
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Calendar;
 6 import java.util.Date;
 7 import java.util.Locale;
 8
 9 public class DateFormatDemo {
10
11     public static void main(String[] args) {
12         Date now = new Date();
13
14         // Date ==> Calendar
15         Calendar calendar = Calendar.getInstance();
16         calendar.setTime(now);
17
18         // 加8周
19         calendar.add(Calendar.WEEK_OF_YEAR, 8);
20
21         // Calendar ==> Date
22         now = calendar.getTime();
23         System.out.println(now);
24
25         // 格式化
26         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS",
27
28 Locale.CHINA);
29         // Date ==> String
30         String result = format.format(now);//format为DateFormat类中的一个方法,用于Formats a Date into a date/time string.
31         System.out.println(result);
32
33         // String ==> Date
34         String d = "2018-01-12 09:21:21.000";
35         try {
36             Date date = format.parse(d);//parse解析,也是DateFormat类中的一个方法,解析给定字符串中的文本内容,以产生一个日期
37             System.out.println(date);
38         } catch (ParseException e) {
39             e.printStackTrace();
40         }
41
42     }
43 }

原文地址:https://www.cnblogs.com/LJHAHA/p/10198923.html

时间: 2024-10-11 19:11:24

Date、Calendar、DateFormat类的相关文章

Date、DateFormat类、Calendar类、基本类型包装类、System类、Math类、Arrays类、大数据运算类

1.Date (1)概述: 时间的原点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0 注意:时间和日期的计算,必须依赖毫秒值 ----------------Date()获取当前时间 import java.util.Date; public class Demo06boke { public static void main(String[] args) { Date sdf=new Date(); System.out.println(sdf); } } Date(lon

Java Date Calendar DateFormat Details

From https://www.ntu.edu.sg/home/ehchua/programming/java/DateTimeCalendar.html Date and Time - Creation, Operation and Formatting Introduction There are many Java classes available for date/time and it becomes pretty confusing, in particular, the Dat

java===Date,DateFormat,SimpleDateFormat,Calendar类

package 常用类.Date; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /**月份从0-11的整数表示,0是一月,11是12月 * 日期对象-->毫秒值 getTime方法: * 原因:可以通过毫秒值来进行日期运算 * 毫秒值-->日期对象 setTime方法或者构造方法new Date(毫秒

关于java日期类Date,DateFormat,SimpleDateFormat,Calendar总结

                      Date,DateFormat,SimpleDateFormat,Calendar                                      1.Date类: 在java.util包下,类 Date 表示特定的瞬间,精确到毫秒.从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和分析日期字符串.Date 中的相应方法已废弃.所以Date主要用来生成时间(是网上见解,

黑马程序员(Java)----API之常用类(Math、Random、System、BigInteger、Date和DateFormat、Calendar)

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 4.9  Math Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. 4.9.1 常用变量和方法 成员变量: public static final double PI public static final double E 成员方法: public static int abs(int a):绝对值 public static double ceil(dou

JAVA-基础-常用API(时间日期类,Date,Dateformat,Calendar)

Date 类 Date 表示特定的瞬间,精确到毫秒. 毫秒概念:1000毫秒=1秒 毫秒的0点: System.currentTimeMillis()  返回值long类型参数 用于获取当前日期的毫秒值 时间的原点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0 注意:时间和日期的计算,必须依赖毫秒值 继续查阅Date类的描述,发现Date拥有多个构造函数,只是部分已经过时,但是其中有未过时的构造函数可以把毫秒值转成日期对象. String ToString()   把此Dat

Date类、DateFormat类和Calendar类

1.Date类 常用方法:long getTime():返回1970年1月1日00:00:00以来的毫秒值,把日期对象转换成毫秒值 2.DateFormat类 DateFormat类是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期和时间.日期格式化子类DateSimpleFormat允许进行格式化(日期->文本)和解析(文本->日期). DateFormat类的常用方法: String format(Date date):将一个Date对象格式化为一个日期/时间字符串 Da

常用工具类(System,Runtime,Date,Calendar,Math)

一.Sy 一个java.lang包中的静态工具类. 三大字段: static PrintStream err "标准"错误输出流. static InputStream in "标准"输入流. static PrintStream out "标准"输出流. 其他常用方法: 描述系统信息: 获取系统属性信息: static Properties getProperties(): (Properties是Hashtable的子类,也就是Map 的子类

Java基础学习笔记十三 常用API之正则表达式、Date、DateFormat、Calendar

正则表达式 正则表达式(英语:Regular Expression,在代码中常简写为regex).正则表达式是一个字符串,使用单个字符串来描述.用来定义匹配规则,匹配一系列符合某个句法规则的字符串.在开发中,正则表达式通常被用来检索.替换那些符合某个规则的文本. 正则表达式的匹配规则 参照帮助文档,在Pattern类中有正则表达式的的规则定义,正则表达式中明确区分大小写字母.我们来学习语法规则. 正则表达式的语法规则: 字符:x 含义:代表的是字符x 例如:匹配规则为 "a",那么需要