Java 中獲得當前年份和月份最大天數。
拿到當前月份最大天數,.這個需求用的非常之多。 解決的方法也很多種..
我做專案中用的最多的就是下面的這種:
//寫個主方法測試;是否通過..
public static void main(String[] args) {
TestExtendedWorkHourApplication a = new TestExtendedWorkHourApplication();
//傳入年份和月份,返回月份中最大的天數。
int monthMaxday = a.findMaxDayInMonth(2011, 3);
System.out.println(maxday);
}
//呼叫方法;傳入年份和月份。
public static int findMaxDayInMonth(int year, int month) {
//得到Calendar例項物件。
Calendar calendar = Calendar.getInstance();
if (year > 0) {
calendar.set(Calendar.YEAR, year);
}
if (month > 0) {
calendar.set(Calendar.MONTH, month - 1);
}
return findMaxDayInMonth(calendar);
}
public static int findMaxDayInMonth(Calendar calendar) {
if (calendar == null) {
return 0;
}
//得到實際月份的最大天數。
return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}
Calendar time=Calendar.getInstance();
time.clear();
time.set(Calendar.YEAR,year); //year 為 int
time.set(Calendar.MONTH,i-1);//注意,Calendar物件預設一月為0
int day=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天數
注:在使用set方法之前,必須先clear一下,否則很多資訊會繼承自系統當前時間
//Calendar和Date的轉化
(1) Calendar轉化為Date
Calendar cal=Calendar.getInstance();
Date date=cal.getTime();
(2) Date轉化為Calendar
Date date=new Date();
Calendar cal=Calendar.getInstance();
cal.setTime(date);
//格式化輸出日期時間
Date date=new Date();
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String time=df.format(date);
System.out.println(time);
4.計算一年中的第幾星期
(1)計算某一天是一年中的第幾星期
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR, 2006);
cal.set(Calendar.MONTH,;
cal.set(Calendar.DAY_OF_MONTH, 3);
int weekno=cal.get(Calendar.WEEK_OF_YEAR);
(2)計算一年中的第幾星期是幾號
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR, 2006);
cal.set(Calendar.WEEK_OF_YEAR, 1);
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
System.out.println(df.format(cal.getTime()));
輸出:
2006-01-02
5.add()和roll()的用法(不太常用)
(1)add()方法
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR, 2006);
cal.set(Calendar.MONTH,;
cal.set(Calendar.DAY_OF_MONTH, 3);
cal.add(Calendar.DATE, -4);
Date date=cal.getTime();
System.out.println(df.format(date));
cal.add(Calendar.DATE, 4);
date=cal.getTime();
System.out.println(df.format(date));
輸出:
2006-08-30
2006-09-03
相關文章
- 用js獲取當前月份的天數JS
- js獲取當前月份剩餘的天數程式碼JS
- mssql sqlserver獲取指定月份當月天數總和SQLServer
- 用Java獲得當前效能資訊Java
- JavaScript 獲取當前月份JavaScript
- MYSQL中取當前年份的第一天和當前周,月,季度的第一天/最後一天MySql
- S根據年月實現獲得當月天數
- java獲取當前秒數輸出Java
- js獲取當前月份例項程式碼JS
- js獲取指定月份的天數JS
- JavaScript 獲取指定月份的天數JavaScript
- 批處理獲得系統當前時間之前n天的時間
- php 獲取當前域名和當前協議PHP協議
- 從IT中獲得最大價值(轉)
- Java獲取當前星期幾Java
- java獲取當前時間Java
- Oracle檢視允許的最大連線數和當前連線數Oracle
- javascript獲取當前時間指定天數之前或者之後的日期JavaScript
- T-sql 根據日期時間 按年份、月份、天來統計SQL
- 獲取當前時間戳和隨機數的獲取、Java Random、ThreadLocalRandom、UUID類中的方法應用(隨機數)時間戳隨機JavarandomthreadUI
- java獲取日期差以及幾天前和幾天後的時間Java
- yapi 如何獲得: 當前時間和 n 天后的時間作為引數進行請求API
- Java如何獲取當前執行緒Java執行緒
- oracle檢視允許的最大連線數和當前連線數等資訊Oracle
- ASP.Net MVC View中獲取當前頁面引數ASP.NETMVCView
- Android中獲取當前位置資訊Android
- java統計當前線上數 (轉)Java
- react獲取當前頁面的url引數React
- MySQL如何獲取當前時間的前一天和後一天時間MySql
- 如何用Java獲取當前時間戳?Java時間戳
- 如何用js獲取當前時間和ip地址以及當前城市JS
- PHP中獲取當前頁面的完整URLPHP
- SAP Spartacus 如何獲得當前渲染頁面的 CMS 後設資料
- 透過sql查詢獲得當前session的trace檔名稱SQLSession
- iOS獲取當前 年月日和星期iOS
- 讓Excel表頭自動填寫當前月份和日期(轉)Excel
- JavaScript 獲取當前域名JavaScript
- javascript獲取當前urlJavaScript