java保護date(受保護的java)

本文目錄一覽:

Java中date的用法

Date 類從Java 開發包(JDK) 1.0 就開始進化, 當時它只包含了幾個取得或者設置一個日期數據的各個部分的方法, 比如說月, 日, 和年. 這些方法現在遭到了批評並且已經被轉移到了Calendar類里去了, 我們將在本文中進一步討論它.

這種改進旨在更好的處理日期數據的國際化格式. 就象在JDK 1.1中一樣, Date 類實際上只是一個包裹類, 它包含的是一個長整型數據, 表示的是從GMT(格林尼治標準時間)1970年, 1 月 1日00:00:00這一刻之前或者是之後經歷的毫秒數.

創建一個日期對象

讓我們看一個使用系統的當前日期和時間創建一個日期對象並返回一個長整數的簡單例子. 這個時間通常被稱為Java 虛擬機(JVM)主機環境的系統時間.

import java.util.Date;

public class DateExample1 {

public static void main(String[] args) {

// Get the system date/time

Date date = new Date();

System.out.println(date.getTime());

}

關於JAVA的Date類

首先這是Date(long time)的定義:分配 Date 對象並初始化此對象,以表示自從標準基準時間(稱為「曆元(epoch)」,即 1970 年 1 月 1 日 00:00:00 GMT)以來的指定毫秒數。

也就是說現在date1是Thu Jan 01 08:00:01 CST 1970,date2是Thu Jan 01 07:59:59 CST 1970,一個是向前數1000毫秒,一個是向後。

long是time這個變量的類型

time是一個單位毫秒的long型變量

這些東西java的API文檔里都有說,多查查就不用讓別人費心了~~

java 中的date怎麼用

1、代碼:System.out.println(new java.util.Date());

輸出:Thu Jan 27 14:43:28 CST 2011

2、代碼:System.out.println(new java.util.Date().toLocaleString());

輸出:2011-1-27 14:45:21

不過現在toLocaleString()方法已過時,由DateFormat.format(Date date)取代。

3、代碼:

DateFormat ddf = DateFormat.getDateInstance();

DateFormat dtf = DateFormat.getTimeInstance();

DateFormat ddtf = DateFormat.getDateTimeInstance();

Date date = new Date();

System.out.println(“日期:” + ddf.format(date));

System.out.println(“時間:” + dtf.format(date));

System.out.println(“日期時間:” + ddtf.format(date));

SimpleDateFormat sdf = (SimpleDateFormat) DateFormat.getDateTimeInstance();

System.out.println(“日期時間:” + sdf.format(date));

輸出:

日期:2011-2-9

時間:11:16:02

日期時間:2011-2-9 11:16:02

日期時間:2011-2-9 11:16:02

以上是在window系統下,linux系統下不能這麼處理,linux系統下用以上獲取回來的初始時間格式與此不同。

java語言中的date類及方法的用法

Date和Calendar是Java類庫里提供對時間進行處理的類,由於日期在商業邏輯的應用中佔據着很重要的地位,所以在這裡想對這兩個類進行一個基本的講解,由於技術有限,不到之處請指正。

Date類顧名思義,一看就知道是和日期有關的類了,這個類最主要的作用就是獲得當前時間了,然而這個類裏面也具有設置時間以及一些其他的功能,可是由於本身設計的問題,這些方法卻遭到眾多批評,而這些遭受批評的功能都已移植到另外一個類裏面,這就是今天要講到的第二個類Calendar裏面。

在講兩個類之前,這裡又不能不多提一個類,那就是DateFormat類,這個類是用來格式化日期的,稍後也會講到。

首先,讓我們來看一個獲取當前時間的例子:

Date date = new Date();

System.out.println(date.getTime());上面的語句首先創建了Date的一個對象,接着使用getTime方法獲得當前的時間,但是注意了,輸出後的結果確實一串長整型的數字,這是為什麼?實際上這是系統根據當前時間計算出來的一個long型的數,至於是如何計算出來的就不在本文中講述了,那既然這樣的話又如何顯示正確的時間呢?這就要利用到上面的DateFormat類了,這個類是一個基類,它有一個子類是SimpleDateFormat,具體用法請看下面的代碼:

Date date = new Date();

SimpleDateFormat dateFm = new SimpleDateFormat(“EEEE-MMMM-dd-yyyy”);

System.out.println(dateFm.format(date));這段代碼開始創建了一個Date的對象,用來獲取當前時間,而重點就在於後面的SimpleDateFormat對象,這個對繼承了DateFormat,利用format方法對Date對象進行格式化,然後輸出,而格式的定製是由用戶定製的,EEEE代表星期,MMMM代表月份,而dd代表日,yyyy代表年。使用這個方法就可以根據用戶自定義的格式進行輸出時間。

上面介紹了由用戶自定義格式的輸出時間,下面將來介紹通過JAVA類庫提供的標準格式輸出時間,這就要用到DateFormat類了,請看以下代碼:

Date date = new Date();

DateFormat dateFm = DateFormat.getDateTimeInstance(DateFormat.SHORT,

DateFormat.SHORT);

System.out.println(dateFm.format(date));這裡使用的方法和用戶自定義的方法差不多,只是這裡使用的是一個抽象類,由於DateFormat是一個抽象類,所以它不能通過構造函數構造對象,在這裡是通過getDateTimeInstance()方法獲得該對象,而所傳遞的參數就是DateFormat裏面定義的一些常量,系統根據這些常量輸出當前時間,由於這裡使用的是getDateTimeInstance方法,所以將傳遞兩個常量參數,用來分別格式化日期和當前的時間。

上面講述了如何獲得系統時間以及如何格式化輸出,那如果想獲取或者設置時間當中的某一部分又該如何呢?例如年,月,日。這就要靠Calendar這個類了,這個類也是一個抽象類,它有一個子類GregorianCalendar,接下來我會利用這個子類來演示這個過程,請看以下代碼:

DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL);

GregorianCalendar cal = new GregorianCalendar();

cal.setTime(new Date());

System.out.println(“System Date: ” + dateFormat.format(cal.getTime()));

cal.set(GregorianCalendar.DAY_OF_WEEK,GregorianCalendar.FRIDAY);

System.out.println(“After Setting Day of Week to Friday: ” +

dateFormat.format(cal.getTime()));

這段代碼當中,首先創建了一個DateFormat對象進行格式設置,接着創建了一個GregorianCalendar對象cal,接着使用cal.setTime()方法設置cal對象中的時間為當前時間,然後通過format格式化由cal.getTime()返回的時間進行輸出,後面利用set方法設置cal的日期為當前星期的FRIDAY,此時cal中存儲的時間就是這個星期五的該時刻,而後面利用format格式化輸出,假如當前時間為2005年1月27日星期4的11點30分,那麼最後將那句將會輸出2005年1月28日星期5的11點30分。

原創文章,作者:JIP7A,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/130706.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
JIP7A的頭像JIP7A
上一篇 2024-10-03 23:29
下一篇 2024-10-03 23:29

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論