日期类之SimpleDateFormat
1.System 类下的currentTimeMillis();
2.Date类:java.util.Date及其子类java.sql.Date
如何创建实例:其下的方法:toString(), getTime()
(以及其子类java.sql.Date)
3.SimpleDateFormat类 国际化用的
4.Calendar类
5.Math类
6.BigInteger :可以支持任意精度的整数
BigDecimal : 支持任何精度的定点数。
package com.aff.date; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; import org.junit.Test; /*
*与时间相关的类
*1.System 类下的currentTimeMillis();
*2.Date类:java.util.Date及其子类java.sql.Date
* 如何创建实例:其下的方法:toString(), getTime()
* 以及其子类java.sql.Date)
*3.SimpleDateFormat类 国际化用的
*4.Calendar类
*/
public class TestDate { //BigInteger :可以支持任意精度的整数
//BigDecimal : 支持任何精度的定点数。
@Test
public void test6(){
/*
BigInteger 构造器
BigInteger(String val)
public BigInteger abs()
public BigInteger add(BigInteger val)
public BigInteger subtract(BigInteger val)
public BigInteger multiply(BigInteger val)
public BigInteger divide(BigInteger val)
public BigInteger remainder(BigInteger val)
public BigInteger pow(int exponent)
public BigInteger[] divideAndRemainder(BigInteger val) BigDecimal 构造器
public BigDecimal(double val)
public BigDecimal(String val) public BigDecimal add(BigDecimal augend)
public BigDecimal subtract(BigDecimal subtrahend)
public BigDecimal multiply(BigDecimal multiplicand)
public BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
*/
}
//Matn类:提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。
@Test
public void test5(){
/*
abs 绝对值
acos,asin,atan,cos,sin,tan 三角函数
sqrt 平方根
pow(double a,doble b) a的b次幂
log 自然对数
exp e为底指数
max(double a,double b)
min(double a,double b)
random() 返回0.0到1.0的随机数
long round(double a) double型数据a转换为long型(四舍五入)
toDegrees(double angrad) 弧度—>角度
toRadians(double angdeg) 角度—>弧度
*/
}
//Calendar类:是一个抽象基类,主用用于完成日期字段之间相互操作的功能。
@Test
public void test4(){
/*
public void set(int field,int value)
public void add(int field,int amount)
public final Date getTime()
public final void setTime(Date date)
*/
//获取Calendar实例的方法
Calendar c = Calendar.getInstance();
}
//计算总天数的方法
private int getDay(String date1, String date2) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
Date d1 = sdf.parse(date1);
Date d2 = sdf.parse(date2);
long milliTime = d2.getTime()-d1.getTime();
return (int) milliTime/1000/3600/24+1;
}
@Test
public void test3() throws ParseException {
// 三天打鱼两天晒网
String str1 = "1990-01-01";//传入文本,然后转为日期,再计算天数
String str2 = "2020-25-02";
//String str2 = "1990-01-03";
int dates = getDay(str1, str2);
if (dates % 5 == 0 || dates % 5 == 4) {
System.out.println("晒网");
}else{
System.out.println("打鱼");
}
}
@Test
public void test2() throws ParseException {
/*
* java.text.SimpleDateFormat类易于国际化
* 格式化:日期--->文本 使用SimpleDateFormat的format()方法
* 解析:文本---->日期 使用public Date parse(String source)
*/
// 1.格式化1
SimpleDateFormat sdf = new SimpleDateFormat();
String date = sdf.format(new Date()); // 日期转换成表示日期的字符串
System.out.println(date);// 20-4-2 下午2:11
// 2. 格式化2
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
date = sdf1.format(new Date());
System.out.println(date);// 2020-04-02 02:16:02
// 3.解析
Date date1 = sdf.parse("20-4-2 下午2:11");
System.out.println(date1);// Thu Apr 02 14:11:00 CST 2020
Date date2 = sdf1.parse("2020-04-02 02:16:02");// 需要和上面的一一对应,
System.out.println(date2);// Thu Jan 02 02:16:02 CST 2020
}
// java.util.Date不易于国际化
@Test
public void test1() {
// java.sql.Date d2 = new java.sql.Date(234364369845234L);
// System.out.println(d2);// 9396-09-16
// 创建一个Date的实例
Date d1 = new Date();
System.out.println(d1);// Thu Apr 02 13:52:26 CST 2020
System.out.println(d1.getTime());//
Date d2 = new Date(1585806746542L);
System.out.println(d2);// Thu Apr 02 13:52:26 CST 2020
}
}
日期类之SimpleDateFormat的更多相关文章
- 常用类--Date日期类,SimpleDateFormat日期格式类,Calendar日历类,Math数学工具类,Random随机数类
Date日期类 Date表示特定的时间,精确到毫秒; 构造方法: public Data() public Date(long date) 常用方法: public long getTime() pu ...
- java Date日期类和SimpleDateFormat日期类格式
~Date表示特定的时间,精确到毫秒~构造方法:public Date()//构造Date对象并初始化为当前系统的时间public Date(long date) //1970-1-1 0:0:0到指 ...
- JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)
1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...
- Java 时间、日期类
1. System类 currentTimeMillis():返回当前时间的long型值.此long值是从1970年1月1日0点0分00秒开始到当前的毫秒数. 此方法常用来计算时间差. 2. Date ...
- Java:日历类、日期类、数学类、运行时类、随机类、系统类
一:Calendar类 java.util 抽象类Calendar 1.static Calendar getInstance()使用默认时区和语言环境获得一个日历. 2. int get(int ...
- HDOJ(HDU) 2133 What day is it(认识下Java的Calendar类---日期类)
Problem Description Today is Saturday, 17th Nov,2007. Now, if i tell you a date, can you tell me wha ...
- 日期类的使用(java)-蓝桥杯
蓝桥杯日期问题常考,java提供了日期类很方便: //日历类 Calendar c = Calendar.getInstance(); // 获取实例化对象 Date date =c.getTime( ...
- 日期类时间类,日期时间类,单例模式,装箱与拆箱,数字类随机数,BigDecimal总结
1.日期类,时间类,日期时间类 初步日期使用方法及格式转换方法(旧方法): 格式://Mon Jul 30 11:26:05 CST 2018 年月日时分秒 CST代表北 ...
- day17 包装类、日期类
包装类 作用:1.丰富了基本数据类型只能存放值的问题,还提供了大量的方法或常量. 2.包装类充当了基本数据类型和引用数据类型转换的桥梁. 应用层面:包装类.String.基本数据类型的互相转换. 1. ...
随机推荐
- Fiddler 介绍
1.fiddler原理介绍 fiddler 是一个抓包工具,当浏览器访问服务器会形成一个请求,此时,fiddler就处于请求之间,当浏览器发送请求,会先经过 fiddler,然后在到服务器:当服务器有 ...
- RF(IF 判断)
1.关键字 Run Keyword If,格式如下: ELSE 必须大写 ELSE 前面需要加 "..." 表示缩进 Run Keyword If a == b log T ...
- Javajdk的安装
初次接触Java,这是我真正接触的第一门编程语言,在学习它之前,我曾看过一些c语言的书籍,可是并没有进行代码实现,在上手了Java后,并不懂的如何让代码运行,通过一点一点的学习和积累,今天记录下Jav ...
- docker-compose安装rabbitmq
编写时间:2020-05-08 参考文档:docker安装rabbitmq 1. 编写docker-compose.yml version: '3' services: rabbitmq: image ...
- boost在Qt中的使用
一.说明 理论上,Qt和boost是同等级别的C++库,如果使用Qt,一般不会需要再用boost,但是偶尔也会有特殊情况,比如,第三方库依赖等等.本文主要介绍boost在windows Qt(MinG ...
- 【Kafka】Kafka简单介绍
目录 基本介绍 概述 优点 主要应用场景 Kafka的架构 四大核心API 架构内部细节 基本介绍 概述 Kafka官网网站:http://kafka.apache.org/ Kafka是由Apach ...
- [hdu5372 Segment Game]树状数组
题意:有两种操作:(1)插入线段,第i次插入的线段左边界为Li,长度为i (2)删除线段,删除第x次插入的线段.每次插入线段之前询问有多少条线段被它覆盖. 思路:由于插入的线段长度是递增的,所以第i次 ...
- Windows 10 IoT Core用PWM控制器控制树莓派LED灯亮度
我接到一个需求,需要调节LED灯的亮度,且是从上位机进行控制,我了解到树莓派也有PWM,就准备通过PWM来控制灯的亮度. PWM又叫脉宽调制,是用微处理器的数字输出来对模拟电路进行控制,对模拟信号电平 ...
- Linux --如何新增一块硬盘并自动挂载
1. 虚拟机添加硬盘 2. 分区 fdisk /dev/sdb 3. 格式化 mkfs -t ext4 /dev/sdb1 将刚刚创建的盘格式化成 ext4格式 4. 挂载 先创建一个目录,/hom ...
- Cannot parse "1986-05-04": Illegal instant due to time zone offset transition (Asia/Shanghai)
调查系统错误时,发现了一个很奇怪的现象,出生日期1986-05-04号的用户始终无法注册.发现后台使用使用jodatime的代码demo如下: public static DateTime parse ...