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的更多相关文章

  1. 常用类--Date日期类,SimpleDateFormat日期格式类,Calendar日历类,Math数学工具类,Random随机数类

    Date日期类 Date表示特定的时间,精确到毫秒; 构造方法: public Data() public Date(long date) 常用方法: public long getTime() pu ...

  2. java Date日期类和SimpleDateFormat日期类格式

    ~Date表示特定的时间,精确到毫秒~构造方法:public Date()//构造Date对象并初始化为当前系统的时间public Date(long date) //1970-1-1 0:0:0到指 ...

  3. JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)

    1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...

  4. Java 时间、日期类

    1. System类 currentTimeMillis():返回当前时间的long型值.此long值是从1970年1月1日0点0分00秒开始到当前的毫秒数. 此方法常用来计算时间差. 2. Date ...

  5. Java:日历类、日期类、数学类、运行时类、随机类、系统类

    一:Calendar类 java.util 抽象类Calendar   1.static Calendar getInstance()使用默认时区和语言环境获得一个日历. 2. int get(int ...

  6. 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 ...

  7. 日期类的使用(java)-蓝桥杯

    蓝桥杯日期问题常考,java提供了日期类很方便: //日历类 Calendar c = Calendar.getInstance(); // 获取实例化对象 Date date =c.getTime( ...

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

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

  9. day17 包装类、日期类

    包装类 作用:1.丰富了基本数据类型只能存放值的问题,还提供了大量的方法或常量. 2.包装类充当了基本数据类型和引用数据类型转换的桥梁. 应用层面:包装类.String.基本数据类型的互相转换. 1. ...

随机推荐

  1. FileStream提示文件正在由另一进程使用的解决方法

    文件正在由另一进程使用…… FileStream fs = new FileStream(strFilePath, FileMode.Open,FileAccess.Read,FileShare.Re ...

  2. muduo网络库源码学习————Exception类

    Exception类是为异常捕获而设计,可以获得异常的信息以及栈的回溯信息 (原来的代码没有demangle成员函数,输出的格式比较难看,加了demangle成员函数,利用demangle成员函数可以 ...

  3. java程序猿面试系列之jvm专题

    前言 因为疫情的影响,现在都变成金五银六了.为了方便大家,在此开一个程序猿面试系列.总结各大公司所问的问题,希望能够帮助到大家,适合初中级java程序猿阅读. 1. Java类实例化时,JVM执行顺序 ...

  4. ASP.NET Core3.x 基础—注册服务(2)

    这篇文章介绍在ASP.NET Core中注册一下自己的服务. 首先创建一个Services文件夹.在文件夹里面创建一个接口 IClock,以及两个类ChinaClock.UtcClock.这两个类分别 ...

  5. html之表单元素form

    表单元素form \(都是嵌套input标签来实现,其中type属性选择不同则不同\) \(text:文本内容(输入内容可见)\) \(password:密码(输入内容不可见)\) \(submit: ...

  6. maven的pom.xml配置文件相关依赖jar包

    <!--声明变量--> <properties> <project.build.sourceEncoding>UTF-8</project.build.sou ...

  7. 面试官:小伙子,听说你看过ThreadLocal源码?(万字图文深度解析ThreadLocal)

    前言 Ym8V9H.png (高清无损原图.pdf关注公众号后回复 ThreadLocal 获取,文末有公众号链接) 前几天写了一篇AQS相关的文章:我画了35张图就是为了让你深入 AQS,反响不错, ...

  8. JS做类型检测到底有几种方法?看完本文就知道了!

    JS有很多数据类型,对于不同数据类型的识别和相互转换也是面试中的一个常考点,本文主要讲的就是类型转换和类型检测. 数据类型 JS中的数据类型主要分为两大类:原始类型(值类型)和引用类型.常见的数据类型 ...

  9. Day_12【集合】扩展案例3_产生10个长度为10,不能重复,由数字0-9,小写字母和大写字母组成的字符串

    分析以下需求,并用代码实现 1.产生10个1-20之间的随机数要求随机数不能重复 2.产生10个长度为10的不能重复的字符串(里面只能出现大写字母.小写字母.0-9的数字),并遍历打印输出 代码 pa ...

  10. matlab 提示 Error using mex No supported compiler or SDK was found 错误的解决办法

    在使用simulink的S-Function去调用C程序的时候,需要使用mex指令预先编译C程序,但是出现 Error using mex No supported compiler or SDK w ...