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
- mssql sqlserver獲取指定月份當月天數總和SQLServer
- JavaScript 獲取當前月份JavaScript
- S根據年月實現獲得當月天數
- 獲取指定月份的天數
- php 獲取當前域名和當前協議PHP協議
- Java獲取當前星期幾Java
- 由system.currentTimeMillis() 獲得當前的時間
- 房間安排(當天最大房間數)
- 獲取當前時間戳和隨機數的獲取、Java Random、ThreadLocalRandom、UUID類中的方法應用(隨機數)時間戳隨機JavarandomthreadUI
- yapi 如何獲得: 當前時間和 n 天后的時間作為引數進行請求API
- Java如何獲取當前執行緒Java執行緒
- java獲取日期差以及幾天前和幾天後的時間Java
- 如何用Java獲取當前時間戳?Java時間戳
- Cocos2d-x 中獲取動畫當前幀數動畫
- 如何用js獲取當前時間和ip地址以及當前城市JS
- react獲取當前頁面的url引數React
- SAP Spartacus 如何獲得當前渲染頁面的 CMS 後設資料
- 獲取當前時間
- 利用爬蟲獲取當前博文數量與字數爬蟲
- 【洛谷】【分支】月份天數
- java.lang.OutOfMemoryError: unable to create new native thread問題排查以及當前系統最大程式數量JavaErrorthread
- Java:如何輕鬆獲取當前執行的方法名Java
- js外掛--獲取指定時間距離當前時間狀態:上週,當前周,前天,昨天,今天,明天,後天,當前周,下週。JS
- 獲取當前頁面的topViewControllerViewController
- mybatis獲取當前時間MyBatis
- VS2015控制檯中獲取和修改當前字型大小(2-2)
- PHP中獲取當前頁面的各種URL格式PHP
- python 如何獲取當前時間Python
- 教你在Nodejs中如何獲取當前函式被呼叫的行數及檔名NodeJS函式
- 獲取當前元素在兄弟元素節點中的索引索引
- 小程式獲取當前元素在螢幕中的位置
- Flutter 小知識,Key的使用(獲取當前點選Widget位置/獲取當前Widget大小)Flutter
- js獲取當天時間戳JS時間戳
- 《Qt5+QDate和QTime獲取當前系統日期和時間》QT
- 查詢時間從前7天到當前時間
- 獲取當前Tomcat例項的埠Tomcat
- Linux C獲取當前工作目錄Linux
- 微信小程式獲取當前位置微信小程式