java【基础】日期操作
主要是date类,SimpleDateFormat类以及Calendar类的使用。 date表示日期,simpleDateFormat 表示日期格式化,Calendar一般用来做时间的操作,比如加减天数,月数等
public static void main(String[] args) {
// TODO Auto-generated method stub
//获取当前时间
Date d = new Date();
System.out.println(d.getTime());
System.out.println(d);
//获取当前时间转为yyyy-MM-dd HH:mm:ss
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(df.format(d));
//时间戳转为日期格式(我加了1分钟)
long atime=d.getTime()+60000L;
d.setTime(atime);
System.out.println(df.format(d));
//那如果我想获取上个月怎么办,使用Calendar
Calendar cad = Calendar.getInstance();
//列举下Calendar的使用技巧
//转换为Date对象
System.out.println(cad.getTime());
//将Date对象转换为Calendar
cad.setTime(d);//这之前上面给d在当前时间基础上加了1分钟
System.out.println(cad.getTime());
//给Calendar设置时间 注意month,第一月是0
cad.set(2018,6,17,17,48,20);
System.out.println(cad.getTime());
//对日期进行比较
Calendar cad1 = Calendar.getInstance();
Calendar cad2 = Calendar.getInstance();
System.out.println(cad1.compareTo(cad2));
//当cad2减去20个小时
cad1.add(cad1.HOUR,-20);
System.out.println(cad1.getTime());
System.out.println(cad1.compareTo(cad2));
//获取下时区
System.out.println(cad1.getTimeZone());
//如果我换时区为utc0再观察自己的当前时间发现-8小时
TimeZone tz = TimeZone.getTimeZone("GMT+00:00");
cad2.setTimeZone(tz);
//获取下时区,注意了,不要使用getTime()获取date对象,因为他是使用默认时区来表示的。如果返回date对象那看到的时间还是北京时间
System.out.println(cad2.get(Calendar.HOUR));//日历中的小时变成减去8小时
//这里我们来测试一下,二月份的天数是多少天
Calendar cad3 = Calendar.getInstance();
cad3.set(2018,6,29,17,48,20);
cad3.add(cad1.MONTH,-5);
System.out.println(cad3.getTime());//很不幸这里这里是2月的最后一天,因为2月29号不存在
}
java【基础】日期操作的更多相关文章
- Java基础-线程操作共享数据的安全问题
Java基础-线程操作共享数据的安全问题 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.引发线程安全问题 如果有多个线程在同时运行,而这些线程可能会同时运行这段代码.程序每次运 ...
- Java基础-日期格式化DateFormat类简介
Java基础-日期格式化DateFormat类简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.DateFormat类概述 DateFormat 是日期/时间格式化子类的抽象 ...
- Java常用日期操作
对java中常用的日期操作进行整理. 1.日期格式化 /* * 日期格式化类(必须掌握) * API: * G Era 标志符 Text AD y 年 Year 1996; 96 M 年中的月份 Mo ...
- 菜鸡的Java笔记 日期操作类
日期操作类 Date 类与 long 数据类型的转换 SimpleDateFormat 类的使用 Calendar 类的使用 如 ...
- JAVA基础--日期处理
用SimpleDateFormat方法格式化日期格式: package DAO; import java.sql.Connection; import java.sql.DriverManager; ...
- java基础以及操作Excle
今天把会经常用的几个集合的迭代方法又练习了一下,放在这里,经常复习! map集合迭代 /*** 迭代map[1]*/ for (Integer key : map.keySet()) {//迭代key ...
- Java基础——日期类Date
一.概述 date代表一个特定的时间,精确到毫秒 二.构造方法 方法名 说明 public Date() 分配一个Date对象,并初始化,以便它代表被分配的时间,精确到毫秒 public Date(l ...
- Java基础面试操作题: 获取 1-20 之间的随机数,共计 20 个,要求不能重复 获取 1-20 之间的随机数,共计 10 个,要求不能重
package com.swift; import java.util.HashSet; import java.util.Random; import java.util.Set; public c ...
- Java基础面试操作题:读取该文件内容,并按照自然顺序排序后输出到 另一个文件中
package com.swift; import java.io.FileInputStream; import java.io.FileNotFoundException; import java ...
- Java基础面试操作题: File IO 文件过滤器FileFilter 练习 把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件
package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File ...
随机推荐
- c++ CreateProcess调用dos命令
// test.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <windows.h> #include &l ...
- sourcetree file status checkbox gone (文件状态下的勾选文件 list 消失)
原来是这样的(sourcetree 版本 2.7.1) 不知道触发了什么条件,sourcetree 变成了以下状态(官方解释是拖动面板小于 1 px 后会导致这个问题) 中间的那一列可勾选的已修改的文 ...
- centos7-网络连接
Centos系统在安装完毕后,默认联网状态为no,需要手动开启联网状态. 编辑网卡文件 vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 修改O ...
- C# 语言历史版本特性(C# 1.0到C# 7.1汇总更新)
历史版本C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持.微软将C#提交给标准组织ECMA,C# 5.0目前是ECMA ...
- 6-安装hbase
1.前提条件 ①安装zookeeper ②安装hdfs ③由于Hbase对时间的要求比较苛刻,所以3台节点时间必须同步,否则会报错 s10 zookeeper RegionServer HMaster ...
- python3笔记<二> List
python数组申明用方括号:例: Arr = ['python','java','javascript'] 截取其中一段元素:例: Arr = [5,6,7,8,9,10,11,12,13,14,1 ...
- 一个简单SpringBoot例子
一:为什么使用springBoot: 有利于开发(整合框架,例如整合了springMVC,Mybatis等框架); 启动无需配置tomcat(java应用程序运行,实际以jar包运行),内置tomca ...
- JVM 符号引用与直接引用
Java类从加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括,加载 ,验证 , 准备 , 解析 , 初始化 ,卸载 ,总共七个阶段.其中验证 ,准备 , 解析 统称为连接. ...
- Java 学习 UUID 与 时间格式化、时间操作
UUID : UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分.其目的,是让分 ...
- Redis-Sentinel 数据源配置
1.redis配置文件 : redis.properties # Redis settings #sentinel_node_1 redis.sentinel1.host=192.168.0.1 re ...