Java日期类总结

1.Date类(不常用)

1.1Date类概述和构造方法

Date构造方法:

方法名说明
public Date()分配一个Date对象,并初始化,以便它代表它被分配的时间,精确到haomiao
public Date(long date)分配一个Date对象,并将其初始化为表示标准基准时间起指定的毫秒数
public class DateDemo {
    public static void main(String[] args) {
        Date date = new Date();
        //输出的是:Wed Nov 20 18:34:26 CST 2019
        //返回的是当前时间。
        System.out.println(date);
        //返回的是1970年加上我传入的毫秒值的时间的年数
        //Fri Jan 02 08:00:00 CST 1970
        Date date1 = new Date(1000*60*60*24);
        System.out.println(date1.getTime());
        System.out.println(date1);
        //49
        System.out.println(date.getTime()/1000/60/60/24/365);
    }
}

Date常用方法

方法名说明
public long getTime()获取的是日期对象从1970年1月1日00:00:到现在的毫秒值
public void setTime(long time)设置时间,给的是毫秒值
public String toString()把Date对象返回字符串对象
package self_study_at_night_Demo;

import java.util.Date;

public class DateDemo {
    public static void main(String[] args) {
        Date date = new Date();
        //返回一个毫秒值,从1970年到现在的毫秒值
        System.out.println(date.getTime());
        date.setTime(10000000l);
        //把Date对象返回字符串对象
        System.out.println(date.toString());
        //把一个Date值返回integer值
        System.out.println(date.toInstant());
    }
}

2.日期类

2.1 SimpleDateFormat类概述

SimpleDateFormat是一个具体的类,用于以区域设置敏感的方式格式化和解析日期。我们重点学习日期格式化和解析


常用的模式字母及对应关系如下:

y
M
d
H
m
s

口诀:四个小姨,两个大妹妹,两个小弟弟。


SimpleDateFormat构造方法

方法名说明
public SimpleDateFormat()构造一个SimpleDateFormat,使用默认模式和日期格式
public SimpleDateFormat(String pattern)构造一个SimpleDateFormat使用给定的模式和默认的日期格式
SimpleDateFormat sdf = new SimPleDateFormat();
SimpleDateFormat sdf = new SimPleDateFormat("YYYY-MM-DD HH-mm-ss");

SimpleDateFormat常用方法

方法名说明
public final String format(Date date)将日期格式化成日期/时间字符串
public Date parse (String source)从给定字符串的开始解释文本以生成日期
package self_study_at_night_Demo;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class SimpleDateFormatDemo01 {
    public static void main(String[] args) throws ParseException {
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        //结果2019/11/18 下午8:16
        System.out.println(sdf.format(date));
        //Mon Nov 18 00:00:00 CST 2019
        String s = "2019-11-18";
        System.out.println(sdf.parse(s));
    }
}

Calendar 类的概述

用于方便操作年月日等其他字段的

  • 如何获取Calendar对象
    Calendar c = Calendar.getInstance();


    Calendar常用方法

    方法名说明
    public static Calendar getInstance()获取Calendar对象
    public int get(int field)根据具体的字段的值,获取相应的年月日等等
    public void add(int field,int amount)设置具体字符串的偏移量
    public final void set(int year,int Month,int date)设置具体的年月日
    void set(int field,int value)根据具体的字段的值,设置具体的年月日
    package self_study_at_night_Demo;
    
    import java.util.Calendar;
    
    /*
     public static Calendar getInstance()	:获取Calendar对象
    - public int get(int field)			   	:根据具体的字段的值,获取相应的年月日等
    - public void add(int field,int amount)	:设置具体的字段的偏移量
    - public final void set(int year,int month,int date): 设置具体的年月日
    - void set(int field, int value)   : 根据具体的字段的值,设置具体的年月日
    * */
    public class CalendarDemo {
        public static void main(String[] args) {
            Calendar c = Calendar.getInstance();
            //2019
            System.out.println(c.get(Calendar.YEAR));
            //11
            System.out.println(c.get(Calendar.MONTH)+1);
            //18
            System.out.println(c.get(Calendar.DATE));
            c.add(Calendar.YEAR,-1);
            //2018
            System.out.println(c.get(Calendar.YEAR));
            c.set(1997,05,13);
            //1997
            System.out.println(c.get(Calendar.YEAR));
            c.set(Calendar.YEAR,2010);
            //2010
            System.out.println(c.get(Calendar.YEAR));
        }
    }
    
    

    案例:二月天案例

    package Calendar_lianxi;
    
    import java.util.Calendar;
    import java.util.Scanner;
    
    /*
     案例需求
    	获取任意一年的二月有多少天
    * */
    public class EYuTianDemo {
        public static void main(String[] args) {
            Scanner s = new Scanner(System.in);
            System.out.println("请输入年份");
            int i = s.nextInt();
            Calendar c = Calendar.getInstance();
            c.set(i,2,1);
            c.add(Calendar.DATE,-1);
            int i1 = c.get(Calendar.DATE);
            System.out.println(i+"年的二月有:"+i1+"天");
        }
    }
    
    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验1 Java语言基础 4 一、实验目的 4 二、实验要求 4 三、实验内容 4 (一) 声明不同数据类型的变量 4 (二) 了解变量的使用范围 5 (三) 使用关系运算符和逻辑运算符 5 (四) 使用表达式语句与复合语句 6 (五) 使用选择语句 6 (六) 使用循环语句 8 实验2 面向对象编程 11 一、实验目的 11 二、实验要求 11 三、实验内容 11 (一)创建 Applet 应用小程序 11 (二)创建对象并使用对象 12 (三)编写显示当前日期和时间的程序 13 (四)使用修饰符 14 (五)方法中参数传递 15 (六)类的继承性 16 (七)类的多态性 18 实验3 包、接口与异常处理 22 一、实验目的 22 二、实验要求 22 三、实验内容 22 (一)了解并使用 Java 的系统包 22 (二)创建并使用自定义包 22 (三)使用接口技术 24 (四)了解异常处理机制 25 实验4 常用系统类的使用 27 一、实验目的 27 二、实验要求 27 三、实验内容 27 (一)了解 Applet 的生命周期 27 (二)使用数学函数类 28 (三)使用日期类 29 实验5 建立图形用户界面 32 一、实验目的 32 二、实验要求 32 三、实验内容 32 (一)创建图形用户界面 32 (二)了解事件处理机制 34 (三)建立独立运行的窗口界面并使用匿名类 36 (四)使用 Swing 组件 39 (五)使用自定义对话框与内部类 41 实验6 图形处理 44 一、实验目的 44 二、实验要求 44 三、实验内容 44 (一)使用图形类 Graphics 44 实验7图形处理(二) 47 一、实验目的 47 二、实验要求 47 三、实验内容 47 (一)幻灯机效果——连续显示多幅图像 47 (二)使用滚动条改变背景颜色 48 (三)Applet 与 Application 合并运行 49 (四)创建电闪雷鸣的动画 50 实验8 流与文件 53 一、实验目的 53 二、实验要求 53 三、实验内容 53 (一)使用标准数据流的应用程序 53 (二)使用文件输入输出流的应用程序 54 (三)使用随机文件类的应用程序 54 (四)使用数据输入输出流与文件输入输出流类的应用程序 55 (五)使用对象输入输出流的应用程序 56 实验9 线程 58 一、实验目的 58 二、实验要求 58 三、实验内容 58 (一)Thread子类的方法实现多线程 58 (二)实现Runnable接口的方法实现多线程 59 实验10 数据库的连接:JDBC 61 一、实验目的 61 二、实验要求 61 三、实验内容 61 (一)配置ODBC数据源 61 (二)编写程序,按照下表的结构建立"student"表 61 (三)编写程序,完成填写功能 62 (四)编写程序,完成查询功能 62

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值