1. 程式人生 > >Calendar類、輸出當前時間

Calendar類、輸出當前時間

java.util
類 Calendar


public abstract class Calendar // 抽象類,不能直接例項化
extends Objectimplements Serializable, Cloneable, Comparable<Calendar>

一、Calendar類的屬性和方法

Calendar中的屬性都是靜態的,可以使用Calendar類名稱直接呼叫,例如:Calendar.YEAR、Calendar.MONTH。

常用屬性如下:

static int YEAR
          指示年的 getset 的欄位數字。
static int
MONTH
          指示月份的 getset 的欄位數字。
static int
          getset 的欄位數字,指示一個月中的某天。
static int HOUR
          getset 的欄位數字,指示上午或下午的小時。
static int
          getset 的欄位數字,指示一天中的小時。
static int
          getset 的欄位數字,指示一小時中的分鐘。
static int
          getset 的欄位數字,指示一分鐘中的秒。

常用方法如下:

abstract  void add(int field, int amount)
          根據日曆的規則,為給定的日曆欄位新增或減去指定的時間量。
 int get(int field)
          返回給定日曆欄位的值。

二、示例

首先,通過getInstance()方法使用預設時區和語言環境獲得一個日曆。無法通過Calendar的構造方法獲得日曆的原因是:Calendar類為抽象類,不可直接例項化。

然後,利用Calendar的get()方法,取得對應屬性,打印出一定格式的時間欄位。

import java.util.*;
class  StringDemo
{
public static void main(String[] args) 
{
Calendar c1=Calendar.getInstance();

   // 下面列印當前時間
   System.out.println(c1.get(Calendar.YEAR)+"年"+(c1.get(Calendar.MONTH)+1)+
   "月"+c1.get(Calendar.DAY_OF_MONTH)+"日"+c1.get(Calendar.HOUR_OF_DAY)+
":"+c1.get(Calendar.MINUTE)+":"+c1.get(Calendar.SECOND));

c1.add(Calendar.DAY_OF_MONTH, 5);        //為DAY_OF_MONTH屬性增加5


// 下面修改後的時間
System.out.println(c1.get(c1.YEAR)+"年"+(c1.get(c1.MONTH)+1)+
        "月"+c1.get(c1.DAY_OF_MONTH)+"日"+c1.get(c1.HOUR_OF_DAY)+
":"+c1.get(c1.MINUTE)+":"+c1.get(c1.SECOND));

c1.add(Calendar.DAY_OF_MONTH, -5);       //DAY_OF_MONTH屬性增加5後再減去5


// 下面修改後的時間
System.out.println(c1.get(c1.YEAR)+"年"+(c1.get(c1.MONTH)+1)+
    "月"+c1.get(c1.DAY_OF_MONTH)+"日"+c1.get(c1.HOUR_OF_DAY)+
":"+c1.get(c1.MINUTE)+":"+c1.get(c1.SECOND));


}
}

結果:

2014年3月5日15:39:0

2014年3月10日15:39:0

2014年3月5日15:39:0