java — 时间日期类

java —— 时间日期类的简单操作

一、java.util.Date类

  • 获取系统时间
1     public static void main(String[] args) {
2         // 使用Date获取系统时间
3         Date date = new Date();
4         System.out.println(date);
5     }

输出结果:Sun Jan 13 12:30:30 CST 2019

输出结果不符合中国人的阅读习惯,我们得使用 SimpleDateFormat类 进行一些操作,按照我们自己的习惯来读取

二、java.util.Calendar类

  • 获取系统时间
    public static void main(String[] args) {
        // 使用getInstance()对Calendar进行实例化
        Calendar cal= Calendar.getInstance();
        // 使用getTime()获取系统时间
        System.out.println(cal.getTime());
    }

输出结果:Thu Jan 26 12:55:15 CST 2017

输出结果和Date获取到的时间格式是一样的,使用 SimpleDateFormat类 进行转换

  • 自己设置时间
1     public static void main(String[] args) {
2         // 使用getInstance()对Calendar进行实例化
3         Calendar cal= Calendar.getInstance();
4         // 使用set()方法进行设置时间
5         cal.set(2018, 06, 01);
6
7         System.out.println(cal.getTime());
8     }

输出结果:Sun Jul 01 13:11:00 CST 2018

虽然阅读起来不习惯,但日期确实是2018年6月1日

  • 获取单个日期时间属性
 1     public static void main(String[] args) {
 2         Calendar cal = Calendar.getInstance();
 3         cal.set(2018, 06, 01);
 4         // 使用get()方法获取某一个属性
 5         // get(Calendar.YEAR) 获取年份
 6         System.out.print(cal.get(Calendar.YEAR)+"年");
 7         // get(Calendar.MONTH) 获取月份
 8         System.out.print(cal.get(Calendar.MONTH)+"月");
 9         // get(Calendar.DATE) 获取几号
10         System.out.print(cal.get(Calendar.DATE)+"日");
11     }

输出结果:2018年6月1日

Calendar提供一些静态字段,可供get()方法使用,下面为一些常用的字段

三、java.text.SimpleDateFormat类

SimpleDateFormat类 继承了 Format抽象类,我们将在SimpleDateFormat进行时间的一些操作

  • 将原本我们不熟悉的Date类型,转换成我们熟悉的格式
1     public static void main(String[] args) {
2         // 实例化SimpleDateFormat类,并传输格式参数
3         SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
4         // 使用format()方法,输入Date类型,输出字符串类型
5         String date01 = sdf.format(new Date());
6         System.out.println(date01);
7     }

输出结果:2019年01月13日 13:44:18

日期时间格式,世界上都大不相同,所以我们在对SimpleDateFormat类进行实例化时,就该输入一段格式,来进行控制。

  • 下面是SimpleDateFormat类中的模式字母,实例化的时候,输入格式时会用到(注意大小写)

四、日期加减

  • 计算未来的日期
 1     public static void main(String[] args) {
 2         // 实例化SimpleDateFormat类,并传输格式参数
 3         SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
 4         Calendar cal = Calendar.getInstance();
 5
 6         // 使用format()方法,输入Date类型,输出字符串类型
 7         String date01 = sdf.format(cal.getTime());
 8         System.out.println(date01);
 9
10         // 使用Carlendar的add()方法,给指定的字段进行加减
11         cal.add(Calendar.YEAR, 1);
12         String date02 = sdf.format(cal.getTime());
13         System.out.println(date02);
14     }

输出结果

2019年01月13日 14:08:56
2020年01月13日 14:08:56
  • 计算两个日期的时间差
 1     public static void main(String[] args) {
 2
 3         Calendar cal01 = Calendar.getInstance();
 4         cal01.set(2012, 12, 26, 12, 20);
 5         // 使用Calendar中的getTimeInMillis()方法获取毫秒数
 6         long time01 = cal01.getTimeInMillis();
 7
 8         Calendar cal02 = Calendar.getInstance();
 9         cal02.set(2013, 01, 01, 12, 20);
10         long time02 = cal02.getTimeInMillis();
11
12         // 我们将对两个时间的毫秒差进行操作,得到最后相差的天数
13         long cha = (time02-time01)/(1000*60*60*24);
14         System.out.println("相差的天数:"+cha);
15     }

输出结果:相差的天数:6

原文地址:https://www.cnblogs.com/whc0305/p/10262144.html

时间: 2024-08-28 11:15:14

java — 时间日期类的相关文章

Java 时间日期类

1.Date 1 package demo03; 2 3 import java.util.Date; 4 5 public class DateDemo { 6 public static void main(String[] args) { 7 //无参构造方法, 用来创建当前日期时间的Date对象 8 Date d = new Date(); 9 System.out.println(d); 10 11 //long型参数作为构造方法, 用来创建指定时间的日期对象, 参数表示毫秒数 12

Java日期工具类,Java时间工具类,Java时间格式化

Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ?Copyright  蕃薯耀 2017年2月4日 15:03:27 星期六 http://www.cnblogs.co

(转)java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)

java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 1. java向MySQL插入当前时间的四种方式 第一种:将java.util.Date类型的时间转成mysql数据库识别的java.sql.Date类型时间 注:java.util.Date是java.sql.Date的父类 Date time= new java.sql.Date(newjava.util.Date().getTime()); 第二种: java用PreparedS

java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)

java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 1. java向MySQL插入当前时间的四种方式 第一种:将java.util.Date类型的时间转成mysql数据库识别的java.sql.Date类型时间 注:java.util.Date是java.sql.Date的父类 Date time= new java.sql.Date(newjava.util.Date().getTime()); 第二种: java用PreparedS

Java8 时间日期类操作

Java8 时间日期类操作 Java8的时间类有两个重要的特性 线程安全 不可变类,返回的都是新的对象 显然,该特性解决了原来java.util.Date类与SimpleDateFormat线程不安全的问题.同时Java8的时间类提供了诸多内置方法,方便了对时间进行相应的操作. 上图为Java8时间类的覆盖范围 相关的类有 LocalDate LocalTime LocalDateTime ZoneId ZonedDateTime Instant Instant类 Instant类用来表示格林威

时间类和日期类派生出时间日期类

今天再写一个多重继承的应用实例,时间类和日期类派生出时间日期类 程序代码 #include <iostream> using namespace std; class Date//日期类 { public: //构造函数 Date(int y = 0, int m = 0, int d = 0); //设置日期 void SetDate(int y,int m,int d); //打印日期 void PrintDate() { cout<<year<<"年&q

OC - 时间日期类NSDate

OC - 时间日期类NSDate //NSDate 时间日期类 NSDate 二进制数据流 { //1.获取当前时间 零时区的时间 //显示的是格林尼治的时间: 年-月-日 时:分:秒:+时区 NSDate *date = [NSDate date]; NSLog(@"当前零时区时间 %@", date); //2.获得本地时间 东八区 晚八个小时 以秒计时 NSDate *date1 = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60

Java中日期类型和mysql中日期类型进行整合

1. java与mysql中日期.时间类型总结: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59:59 timestamp 4bytes xxxx-xx-xx xx:xx:xx 1970-01-01 00:00:01到2038 date 3bytes xxxx-x

java 时间日期

Java 日期时间 java.util 包提供了 Date 类来封装当前的日期和时间. Date 类提供两个构造函数来实例化 Date 对象. 第一个构造函数使用当前日期和时间来初始化对象. Date( ) 第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数. Date(long millisec) Date对象创建以后,可以调用下面的方法. 序号 方法和描述 1 boolean after(Date date)若当调用此方法的Date对象在指定日期之后返回true,否则返回fa