/**
十年的湛江網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都營銷網站建設的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整湛江建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。創新互聯從事“湛江網站設計”,“湛江網站推廣”以來,每個客戶項目都認真落實執行。
?*?在一個時間段計算出多少天
?*?@param?beginDate?開始時間
?*?@param?endDate?結束時間
?*?@param?format?格式?如果??yyyy-MM-dd;yyyy
?*?@return?天數
?*/
public?static?int?getDay(String?beginDate,?String?endDate,?String?format)?{
try?{
//?日期操作類,設置制定的格式
SimpleDateFormat?sim?=?new?SimpleDateFormat(format);
Date?d1?=?sim.parse(beginDate);?//?傳入開始時間
Date?d2?=?sim.parse(endDate);???//?傳入結束時間
//計算開始時間和結束時間的時間差
int?num?=?(int)?((d2.getTime()?-?d1.getTime())?/?(3600L?*?1000?*?24));
if(!format.equals("yyyy"))?{
num?=?num?+?1;
}
return?num;
}?catch?(Exception?e)?{
e.printStackTrace();
return?0;
}
}
public?static?void?main(String[]?args)?{
System.out.println(getDay("2018",?"2020",?"yyyy"));
System.out.println(getDay("2018-01-01",?"2018-12-31",?"yyyy-MM-dd"));
System.out.println(getDay("2019-02-07",?"2019-02-11",?"yyyy-MM-dd"));
}
年的月的都有,有什么疑問可以問我。
下邊是根據你的需求寫的代碼:
importjava.util.Calendar;
importjava.sql.Date;
publicclassTestAA{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
Calendarcld=Calendar.getInstance();
Datedate=newjava.sql.Date(1319534374312l);;
cld.setTime(date);
/**
*注:在jdk1.6以后下列方法都已過時
*date.getYear();
*date.getMonth();
*date.getDay();
*/
System.out.println("日期為:"+date.toString());
//方法一
System.out.println("年份:"+cld.get(Calendar.YEAR));
System.out.println("月份:"+(cld.get(Calendar.MONTH)+1));
System.out.println("日:"+cld.get(Calendar.DAY_OF_MONTH));
//方法er
System.out.println("年份:"+date.toString().split("-")[0]);
System.out.println("月份:"+date.toString().split("-")[1]);
System.out.println("日:"+date.toString().split("-")[2]);
}
}
技術優勢:
與傳統程序不同,Sun公司在推出Java之際就將其作為一種開放的技術。全球數以萬計的Java開發公司被要求所設計的Java軟件必須相互兼容。“Java語言靠群體的力量而非公司的力量”是Sun公司的口號之一,并獲得了廣大軟件開發商的認同。這與微軟公司所倡導的注重精英和封閉式的模式完全不同。
Sun公司對Java編程語言的解釋是:Java編程語言是個簡單、面向對象、分布式、解釋性、健壯、安全與系統無關、可移植、高性能、多線程和動態的語言。
Java平臺是基于Java語言的平臺。這樣的平臺非常流行。因此微軟公司推出了與之競爭的.NET平臺以及模仿Java的C#語言。java的應用已十分廣泛。
Java是功能完善的通用程序設計語言,可以用來開發可靠的、要求嚴格的應用程序。
JAVA的用途:80%以上的高端企業級應用都使用JAVA平臺(電信、銀行等)。JAVA是成熟的產品,已經有10年的歷史。
自從1995年Sun公司正式發布Java1.0版以來,在全球范圍內引發了經久不衰的Java熱潮,Java的版本也不斷更新到v1.1,v1.2,v1.3,v1.4,其內容也有了巨大的改進和擴充,還出現了標準版、企業版、服務器版等滿足不同需要的版本。另外還有迅速發展的JavaBean,其它的Java編譯器和集成開發環境等第三方軟件。
import java.util.Scanner;
/**
* Created by xpf on 2018/6/22 :)
* GitHub:xinpengfei520
* Function:
*/
public class CalculateUtils {
/*平年二月28天*/
private static final int DAYS_28 = 28;
/*閏年二月29天*/
private static final int DAYS_29 = 29;
/*除了31天的月份其他均為30天*/
private static final int DAYS_30 = 30;
/*1、3、5、7、8、10、12月份31天*/
private static final int DAYS_31 = 31;
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Please input year:");
int year = input.nextInt();
System.out.println("Please input month:");
int month = input.nextInt();
System.out.println("Please input day:");
int day = input.nextInt();
int daysInYear = getDaysInYear(year, month, day);
System.out.println("daysInYear:" + daysInYear);
}
/**
* get days in this year
*
* @param year
* @param month
* @param day
* @return
*/
public static int getDaysInYear(int year, int month, int day) {
int totalDays = 0;
switch (month) {
// 12 月份加的是11月份的天數,依次類推
case 12:
totalDays += DAYS_30;
case 11:
totalDays += DAYS_31;
case 10:
totalDays += DAYS_30;
case 9:
totalDays += DAYS_31;
case 8:
totalDays += DAYS_31;
case 7:
totalDays += DAYS_30;
case 6:
totalDays += DAYS_31;
case 5:
totalDays += DAYS_30;
case 4:
totalDays += DAYS_31;
case 3:
// 判斷是否是閏年
if (((year / 4 == 0) (year / 100 != 0)) || (year / 400 == 0)) {
totalDays += DAYS_29;
} else {
totalDays += DAYS_28;
}
case 2:
totalDays += DAYS_31;
case 1: // 如果是1月份就加上輸入的天數
totalDays += day;
}
return totalDays;
}
}
【解題思路】
1、通過年份區分是閏年還是平年,平年 2 月 28 年,閏年 2 月 29 天。
2、1、3、5、7、8、10、12 月份為 31 天,其余月份為 30 天。
3、將每個月的天數相加即可,如果輸入的是 12 月,則從 11 月往前累加到1月。
擴展資料
其他java計算日期的方式
package study01;
import java.util.Scanner;
public class TestDay {
/*
* 輸入2017年的月和日:month=?,day=? 輸出輸入的日期是2017年的第幾天,使用switch完成
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("month=");
int month = sc.nextInt();
System.out.print("day=");
int day = sc.nextInt();
int days = 0;
switch (month) {
case 12:
days += 30;
case 11:
days += 31;? ? ?
case 10:
days += 30;
case 9:
days += 31;
case 8:
days += 31;
case 7:
days += 30;
case 6:
days += 31;?
case 5:
days += 30;? ? ? ?
case 4:
days += 31;
case 3:
days += 28;
case 2:
days += 31;
case 1:
days += day;? ? ? ? ? ? ? ?
}
if(days365){
System.out.println("你輸入的已經超過了365天了");
}else{
System.out.println("第" + days + "天");
}
}
}
輸出的結果如下:
month=12
day=31
第365天
參考資料:百度百科-Scanner
參考資料:百度百科-java
網頁標題:按年月日統計代碼java java計算年月日
文章路徑:http://vcdvsql.cn/article34/dopjpse.html
成都網站建設公司_創新互聯,為您提供企業建站、網站排名、App開發、關鍵詞優化、動態網站、
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯