Java常用类

3.日期相关类

3.1Date类

在标准Java类库中包含一个Date类,它的对象表示一个特定的瞬间,精确到毫秒。在网上商城下单时,在对报销单进行审核时,都需要获取当前的时间,通过Date类就可以完成。

例子:Date类的使用

package li.normalclass.date;

import java.util.Date;

public class TestDate {
public static void main(String[] args) {
//获取当前的时间 格式为 yyyyMMddhhmmss
Date date = new Date();//相当于new Date(System.currentTimeMillis())
//操作当前的时间
System.out.println(date.toString());//Sat Aug 06 19:15:28 CST 2022
System.out.println(date.toLocaleString());//2022-8-6 19:16:06
System.out.println(System.currentTimeMillis());//计算从1970年1月1日 0:00:00到目前为止的毫秒数
System.out.println(date.getYear());//122 =2022-1900
System.out.println(date.getMonth());//7 0-11 现在是八月
System.out.println(date.getDate());//6 日
System.out.println(date.getDay());//6 当前为星期六 注:星期日为0
System.out.println(date.getHours());//19 当前为19点
System.out.println(date.getMinutes());//26 当前为26分
System.out.println(date.getSeconds());//16 当前为16秒
System.out.println(date.getTime());//1659785176358 计算从1970年1月1日 0:00:00到目前为止的毫秒数 //获取当前的时间 格式为 yyyyMMdd
java.sql.Date sdate = new java.sql.Date(System.currentTimeMillis());
System.out.println(sdate.toString());//2022-08-06 java.sql.Date sdate2 = java.sql.Date.valueOf("1896-9-10");
System.out.println(sdate2.toString());//1896-09-10 }
}

查看API文档大家可以看到其实Date类中的很多方法已经过时了。JDK1.1之前的Date包含了日期操作、字符串转化为对象等操作。经过JDK1.1之后,日期操作类一般使用Calendar类,而字符串的转化 使用DateFormat类。

3.2DateFormat类

Format:格式

DateFormat是一个抽象类,一般使用它的子类SimpleDateFormat类来实现。主要作用就是把时间对象转化为指定格式的字符串。反之,就是把指定格式的字符串转化为时间对象。

字符串----->日期

日期----->字符串

例子:

package li.normalclass.date;

import java.text.*;
import java.util.Date; /**
* 主要操作:
* DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//指定识别的格式
*
* Date date = sdf.parse(strdate);//将字符串转换成日期
*
* String strdate2 = sdf.format(date);//将日期转换成字符串
*/
public class TestDateFormat {
public static void main(String[] args) throws ParseException {
String strdate = "1999-12-23 12:12:12";//字符串 //String---->Date
//DateFormat是抽象类,要实例化只能引用它的子类SimpleDateFormat
DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//指定识别的格式
Date date = sdf.parse(strdate);//将字符串转换成日期 String strdate2 = sdf.format(date);//将日期转换成字符串
System.out.println(strdate2); }
}

3.3Calendar类

Calendar:日历

例子:

package li.normalclass.date;

import java.util.Calendar;
import java.util.GregorianCalendar; public class TestCalendar {
public static void main(String[] args) {
//获取当前的时间
Calendar cal = new GregorianCalendar();
// 输出当前的时间
System.out.println(cal);
//java.util.GregorianCalendar[time=1659791839017,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=31,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2022,MONTH=7,WEEK_OF_YEAR=32,WEEK_OF_MONTH=1,DAY_OF_MONTH=6,DAY_OF_YEAR=218,DAY_OF_WEEK=7,DAY_OF_WEEK_IN_MONTH=1,AM_PM=1,HOUR=9,HOUR_OF_DAY=21,MINUTE=17,SECOND=19,MILLISECOND=17,ZONE_OFFSET=28800000,DST_OFFSET=0] System.out.println(cal.get(Calendar.YEAR));//2022
System.out.println(cal.get(Calendar.MONTH));//7 0~11 7代表8月
System.out.println(cal.get(Calendar.DATE));//6 代表6号
System.out.println(cal.get(Calendar.DAY_OF_WEEK));//7 代表周六 从周日为1开始计算一周 //改变时间
cal.set(Calendar.DATE,1);//直接指定日期 1号
cal.set(Calendar.MONTH,1);//直接指定月数 2月
cal.add(Calendar.DATE,2);//在设置的日期上再加上两天
System.out.println(cal.get(Calendar.YEAR));//2022 -- 22年
System.out.println(cal.get(Calendar.MONTH));//1 -- 2月
System.out.println(cal.get(Calendar.DATE));//3 -- 3号
System.out.println(cal.get(Calendar.DAY_OF_WEEK));//5 -- 周四
System.out.println(cal.getActualMaximum(Calendar.DATE));//28 -- 指定月一共有多少天
} }

day15--Java常用类之日期相关类的更多相关文章

  1. Java基础之Java常用类--Object类,字符串相关类,包装类,日期相关类,数字相关类

    Java是一种面向对象的语言,也就是将万事万物可以描述为对象,特点如下: 1.面向对象是常见的一种思考习惯,符合人们的思考习惯.2.面向对象的出现,将复杂的事情简单化.3.面向对象的出现,将之前过程中 ...

  2. Android随笔之——Android时间、日期相关类和方法

    今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和Simp ...

  3. java8及8之前日期相关类

    java 8日期相关类 Instant:精确到纳秒的时间戳 Duration:处理有关基于时间的时间量 LocalDate:只包含日期,比如:2016-10-20 LocalTime:只包含时间,比如 ...

  4. java基础22 日期类、日历类、日期格式类

    package com.dhb.code; import java.text.ParseException; import java.text.SimpleDateFormat; import jav ...

  5. 时间日期相关类:Date类,DateFormat类&SimpleDateFormat类,Calendar类

    日期相关类 1.Date类:日期时间类 A.构造方法 Date(): 根据当前系统时间创建日期对象 ​ Date(Long time):根据传入的毫秒值时间创建日期对象 B.成员方法 Long get ...

  6. Java的日期类和日期格式化类

    日期类: Date date = new Date(); // 获取当前的系统时间 2 System.out.println("年份:"+ date.getYear()); Cal ...

  7. 日期类时间类,日期时间类,单例模式,装箱与拆箱,数字类随机数,BigDecimal总结

    1.日期类,时间类,日期时间类 初步日期使用方法及格式转换方法(旧方法): 格式://Mon Jul 30 11:26:05 CST 2018             年月日时分秒    CST代表北 ...

  8. Java常用类之【日期相关类】

    一.日期类 Java语言提供了2个类来处理日期 Date类 Date类以毫秒来表示特定的日期 构造方法 Date date = new Date(); System.out.println(date) ...

  9. Java基础——常用类之日期时间类

    如果有机会,请尝试Java8中全新的时间日期API!(参见Java8新特性随笔) 如果还是使用Java7及之前的版本,那么你可以尝试一些工具类(参考使用工具类相关的Hutool-DateUtil) 如 ...

随机推荐

  1. MySQL执行计划explain

    一.简介 分析查询慢的原因,在查询语句前加explain即可.如: 二.输出格式 2.0 测试数据 # 表user_info CREATE TABLE `user_info` ( `id` bigin ...

  2. Redis系列:深刻理解高性能Redis的本质

    1 背景 分布式系统绕不开的核心之一的就是数据缓存,有了缓存的支撑,系统的整体吞吐量会有很大的提升.通过使用缓存,我们把频繁查询的数据由磁盘调度到缓存中,保证数据的高效率读写. 当然,除了在内存内运行 ...

  3. python之三元表达式与生成式与匿名与内置函数(部分)

    目录 三元表达式 各种生成式 列表生成式(可同样作用于集合) 字典生成式 匿名函数 重要内置函数 map() zip() filter() reduce() 常见内置函数(部分) 三元表达式 三元表达 ...

  4. 前端向后端传递formData类型的二进制文件

    // 获取到的文件file类型转换为formData类型 let formData = new FormData(); formData.append("file", file文件 ...

  5. 第06组 Beta冲刺 (5/5)

    目录 1.1 基本情况 1.2 冲刺概况汇报 1.郝雷明 2. 方梓涵 3.曾丽莉 4.黄少丹 5. 董翔云 6.鲍凌函 7.杜筱 8.詹鑫冰 9.曹兰英 10.吴沅静 1.3 冲刺成果展示 1.1 ...

  6. Unity-UGUI-无限循环列表

    前言:项目准备新增一个竞技场排行榜,策划规定只显示0-400名的玩家.我一想,生成四百个游戏物体,怕不是得把手机给卡死?回想原来在GitHub上看到过一个实现思路就是无限循环列表,所以就想自己试试.公 ...

  7. SQL Server 2019企业版和标准版的区别?

    来源公众号:SQL数据库运维 原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485400&idx=1&a ...

  8. c++ 树状数组

    关于树状数组 树状数组,即 Binary Indexed Tree ,主要用于维护查询前缀和 属于 log 型数据结构 和线段树比较 都是 log 级别 树状数组常数.耗费的空间.代码量都比线段树小 ...

  9. C语言- 基础数据结构和算法 - 循环链表

    听黑马程序员教程<基础数据结构和算法 (C版本)>,照着老师所讲抄的, 视频地址https://www.bilibili.com/video/BV1vE411f7Jh?p=1 喜欢的朋友可 ...

  10. 【clickhouse专栏】对标mongodb存储类JSON数据文档统计分析

    一.文档存储的需求 很多的开发者都使用过mongodb,在mongodb中数据记录是以文档的形式存在的(类似于一种多级嵌套SQL的形式).比如下面的JSON数据结构:dev_ip表示某一台服务器的ip ...