java Calendar的學習分享

来源:https://www.cnblogs.com/xym15079750872/archive/2019/03/28/10617750.html
-Advertisement-
Play Games

前言: 在我們的日常生活中,常常能看見時間。如:在我們的手機里,在一些網站上也能隨處看到時間。那我們在項目的開發中,也常常涉及到時間的處理,對於我們經常會遇到和處理的問題。Java中專門為我們處理時間提供了一個重要的類 Calendar。 一、如何運用Calendar類呢? 如果想要取得時間,首先使 ...


  

 前言:

  在我們的日常生活中,常常能看見時間。如:在我們的手機里,在一些網站上也能隨處看到時間。那我們在項目的開發中,也常常涉及到時間的處理,對於我們經常會遇到和處理的問題。Java中專門為我們處理時間提供了一個重要的類 Calendar。

  一、如何運用Calendar類呢?

    如果想要取得時間,首先使用Calendar的getInstance()取得一個Calendar的實例,

     例如: 
        Calendar calendar = Calendar.getInstance(); 

      每個國家都有屬於自己的一套日期的演算法,西方的每個星期的第一天都是定在星期日,而我們國家則是星期一。所以在編程中一定要正確運用Calendar。

      為了更加便捷的對日期進行操作,Calendar類對YEAR、MONTH、DAY_OF_MONTH、HOUR等日曆欄位之間的轉換提供了一些方法,併為操作日曆欄位(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒值來表示,它是距歷元(即格林威治標準時間 1970 年 1 月 1 日的 00:00:00.000,格裡高利歷)的偏移量。

    

    下麵我們看看Calendar常用方法

 
 1 package pkg1;
 2 
 3 import java.util.Calendar;//需要引用類,才能使用Calendar
 4 
 5 public class text{
 6      public static void main(String args[]){
 7            Calendar calendar = null;//先定義一個變數
 8            calendar=Calendar.getInstance();
 9   
10             //基本的用法
11 
12             //獲得年
13             int yea = calendar.get(Calendar.YEAR);
14             
15             // 獲取月,這裡需要需要月份的範圍為0~11,因此獲取月份的時候需要+1才是當前月份值
16            int month = calendar.get(Calendar.MONTH)+1;
17            
18              //獲得日
19              int day =calendar.get(Calendar.DAY_OF_MONTH);
20 
21              //獲得時刻
22              int hour = calendar.get(Calendar.HOUR);
23 
24              // 獲取分
25              int minute = calendar.get(Calendar.MINUTE);
26 
27              // 獲取秒
28              int second = calendar.get(Calendar.SECOND);
29             
30              //輸出
31             System.out.println("現在是" + year + "年"+month+     
32              "月" + day + "日" + hour + "時" + minute + "分" 
33              second + "秒" + "星期" + weekday);
34     }
35 }                                    
View Code

 

      如果想獲取星期 那要從英語國家星期從星期日開始計算

    例如:

package pkg1;

class Test{
    public static void main(String args[]){
        Calendar calendar = null;
        calendar = Calendar.getInstance();

        int weekday = calendar.get(Calendar.DAY_OF_WEEK)-1;
    
        System.out.println("星期"+weekday);
}
            

 


    

    本篇隨筆是對java中Calendar的類的理解 ,忘大家指正,謝謝!

 

 

      

    

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • python讀取大文件 1. 較pythonic的方法,使用with結構 文件可以自動關閉 異常可以在with塊內處理 <! more 最大的優點 :對可迭代對象 f,進行迭代遍歷:for line in f,會自動地使用緩衝IO(buffered IO)以及記憶體管理,而不必擔心任何大文件的問題。 ...
  • 一、簡要說明 開篇說明 其實吧這是我人生中寫的第一篇博客,我也不知道怎麼排版和編輯讓博文顯示的更加美觀,現在正在學Markdown編輯語法,也是剛剛學編程的一個小菜鳥,目前是大二的在校生,我的初衷是把我平時所學的知識都像做筆記一樣寫下來,讓以後在學習更多知識的時候回來一看,舊的知識就可以鞏固回來了, ...
  • ArrayList ArrayList 是通過一個數組來實現的,因此它是在連續的存儲位置存放對象的引用,只不過它比 Array 更智能,能夠根據集合長度進行自動擴容。 假設讓我們來實現一個簡單的能夠自動擴容的數組,我們最容易想到的點就是: 實際上,ArrayList的內部實現原理也是這樣子,我們可以 ...
  • 開發世界現在有很多反設計模式的開發方式,比如使用可執行代碼文件作為配置文件。 ...
  • 一、引言 雖然springboot幫我們進行了自動配置,但配置還是不可避免的,比如最簡單的埠號,資料庫連接。但springboot的配置一般不用xml進行配置,而是yml和properties,選擇他們當然是因為他們更方便。 YAML(YAML Ain't Markup Language)是以數據 ...
  • 超詳細官方教程解析 https://blog.csdn.net/fly_yr/article/details/51540269 實戰過程: 【1】創建Scrapy項目 scrapy startproject TestDemo 若進入到相應的文件目錄下,在地址欄輸入cmd進入命令行界面,輸入以上命令, ...
  • 複習:#define 定義一個巨集#include 文件包含#if 條件防止頭文件重覆包含定義一個巨集 判斷巨集是否定義 判斷頭文件是否包含#define _STDIO_H_#include<stdio.h>#pragma once 防止頭文件重覆包含 房子頭文件的最前面多文件 .h+*.cpp函數聲明放 ...
  • 本來是考慮, $ f[x][i][0/1] $ 表示 $ x $ 子樹中有$i$個黑點,且 $ x $ 是白點/黑點。但是這裡的答案是要統計不同的子樹的貢獻的。所以就gg了。 看了題解。 應該是要設$f[x][i]$表示$x$子樹中有$i$個黑點,對答案的貢獻。 轉移的時候,就可以單獨計算出$x y ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...