做为一个菜鸟,该如何学好java(一) -----学习Date类

java.util.Date:表示日期和时间的类

类 Date 表示特定的瞬间,精确到毫秒
毫秒的概念:千分之一秒 1000毫秒=1秒
特定的瞬间的概念:一个时间点,一刹那时间
毫秒值的作用:可以对时间和日期进行计算
可以日期转换为毫秒:
当前的日期:
时间原点(0毫秒):1970年 1月1日 00:00:00
就是计算当前日期到时间原点之间一共经历了多少毫秒
****注意:
中国属于东八区,会把时间增加8个小时
1970年 1月1日 08:00:00

获取当前系统到时间1970年1月1日 (00:00:00)经历了多少毫秒
//代码演示 System.out.println(System.currentTimeMillis());
把毫秒转为日期
1天=246060=86400秒=86400000毫秒

看到一个类:1,先学习他的构造方法(用于创造对象)
2然后通过对象调用方法

Date类的空参构造方法
Data()获取当前系统的日期和时间
*/

import java.util.Date;
  
public class DateDemo {
   public static void main(String args[]) {
       // 初始化 Date 对象
       Date date = new Date();
        
       // 使用 toString() 函数显示日期时间
       System.out.println(date.toString());
   }
}

Date(long millisec)传递毫秒值,把毫秒值转为Data日期
Date date = new Date(0L);
System.out.println(date);

Data方法2
1Long getTime()
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来,这个 Date 对象表示的毫秒数。
Long getTime()== System.out.println(System.currentTimeMillis());

*****java.text.DateFromat(格式化日期)*****

它是一个抽象类,无法创造对象使用 所有要使用子类创造对象
已知子类SimpleDateFormat
作用
格式化(日期到文本)解析(文本–》日期)
构造方法
SimpleDateFormat(String pattern )
用给定的模式和默认语言的日期格式符号构造 SimpleDateFormat
参数 String pattern

模式:区分大小写
y 四位年份 2001
M 月份 July or 07
d 一个月的日期 10
h A.M./P.M. (1~12)格式小时 12
H 一天中的小时 (0~23) 22
m 分钟数 30
s 秒数 55
S 毫秒数 234
E 星期几
注意:模式中的字母不可以变,连接符号可以变
成员方法:
String format(Data date)按照指定的模式,把Date日期,格式化为符合模式的字符串
Data parse(String source)把符合模式的字符串,解析为Data日期

使用步骤:
1创建SimpleDateFormat对象,构造方法中传指定模式
2调用SimpleDateFormat对象中的方法format,按照构造方法指定的模式,`

把Data日期格式化为符合模式的字符串(文本)(就是把英语变成中文)
 SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
  Date dNow = new Date( );
  System.out.println("当前时间为: " + ft.format(dNow));
Calendar类

我们现在已经能够格式化并创建一个日期对象了,但是我们如何才能设置和获取日期数据的特定部分呢,比如说小时,日,或者分钟? 我们又如何在日期的这些部分加上或者减去值呢? 答案是使用Calendar 类。

Calendar类的功能要比Date类强大很多,而且在实现方式上也比Date类要复杂一些。

Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可。
1
创建一个代表系统当前日期的Calendar对象
Calendar c = Calendar.getInstance();//默认是当前日期
2
创建一个指定日期的Calendar对象
使用Calendar类代表特定的时间,需要首先创建一个Calendar的对象,然后再设定该对象中的年月日参数来完成。

例如创建一个代表2009年6月12日的Calendar对象
Calendar c1 = Calendar.getInstance();
c1.set(2009, 6 - 1, 12);
3
Calendar类对象信息的获得像获取它的时间,年份等…
Calendar c1 = Calendar.getInstance();
// 获得年份
int year = c1.get(Calendar.YEAR);
// 获得月份(里面的月份是0~11而中国是1到12)
int month = c1.get(Calendar.MONTH) + 1;
// 获得日期
int date = c1.get(Calendar.DATE);
// 获得小时
int hour = c1.get(Calendar.HOUR_OF_DAY);
// 获得分钟
int minute = c1.get(Calendar.MINUTE);
// 获得秒
int second = c1.get(Calendar.SECOND);
// 获得星期几(注意(这个与Date类是不同的):1代表星期日、2代表星期1、3代表星期二,以此类推)
int day = c1.get(Calendar.DAY_OF_WEEK);
4.1方法
根据日历规则,将指定的(有符号的)时间量添加到给定的日历字段中
void add(int field, int amount)

Calendar c = Calendar.getInstance();
增加年份
c.add(Calender.YEAR,2)
减少年份
c.add(Calender.YEAR,-2)


4.2方法Date getTime()
获取日历当前时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值