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. 在html中使用vue组件

    最近在维护公司的项目,当我拿到项目时,发现他用了vue. 但是~~仅仅是引用vue.js文件,整体的架构还是html那种,没有用webpack! 当时觉得~哇~原来还可以这样! 然后了解了业务逻辑和代 ...

  2. 201771010113 李婷华 《面向java对象程序设计(Java)》第四章学习总结

    一. 理论知识部分 第四章 对象与类 本章主要讲述面向对象程序设计.如何创建标准Java类库中的类对象.如何编写自己的类. 1.面向对象程序设计的几个主要概念: 抽象数据类型.类和对象.封装.类层次( ...

  3. Day_08【面向对象】扩展案例3_使用多态的形式创建缉毒狗对象,调用缉毒方法和吼叫方法

    分析以下需求,并用代码实现: 1.定义动物类: 行为: 吼叫:没有具体的吼叫行为 吃饭:没有具体的吃饭行为 2.定义缉毒接口 行为: 缉毒 3.定义缉毒狗:犬的一种 行为: 吼叫:汪汪叫 吃饭:狗啃骨 ...

  4. Mybatis-入门演示

    MyBatis:持久层框架 前言 之前有看过和学习一些mybatis的文章和内容,但是没有去写过文章记录下,现在借鉴b站的狂神视频和官方文档看来重新撸一遍入门.有错误请多指教. 内容 数据访问层-相当 ...

  5. 新创建的项目AndroidManifast报App is not indexable by Google Search;

    原错误提示:App is not indexable by Google Search; consider adding at least one Activity with an ACTION-VI ...

  6. 04JAVA基础数组

    概念 存储同一种数据类型的多种元素的容器 数组初始化 动态初始化 设定数组长度,系统自动分配默认值 int[] arr = new int[3]; 静态初始化 给定数组默认值,系统自动分配长度 int ...

  7. Ubuntu 18.04使用OpenSSL自签证书(证书支持多IP及多域名,谷歌浏览器无警告)

    前言 在HTTPS数据传输的过程中,需要用SSL/TLS对数据进行加密和解密,以保证网络传输过程中数据的机密性.HTTPS协议可以大致分为两个部分:其一是协商密钥,首先当Client向Web Serv ...

  8. linux-rpm强制安装跳过依赖包

    [root@localhost ~]# rpm -ivh tigervnc-1.10.80-4.20200317git8b4be5fd.el7.x86_64.rpm --nodeps --force ...

  9. js判断数组(数组对象)中是否存在指定的值,如果存在就删除

    数组中是否存在指定值,存在就删除 var str = ["a", "b", "c"]; var index = str.indexOf(&q ...

  10. javaEE ->DBUtils&连接池

    第1章    DBUtils 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC开发,本案例我们讲采用apache commons组件一个成员:DBUtils. DBUtils就是J ...