導航:首頁 > 編程語言 > java日期年數

java日期年數

發布時間:2022-06-22 12:56:33

1. java 計算兩個日期點之間相差的年數

經精確,就逐年以 Calendar 類的方法去add、判斷是否超了。

2. java編程:求兩個日期的年數差

oracle資料庫
比如有表test
裡面有欄位
id,begindate,enddate
可以這樣
select to_char(begindate,'yyyy-mm') begindate,to_char(enddate,'yyyy-mm') enddate from test where id=?
上面的問號可以換成你傳入的id號
在獲得後
String begindate = rs.getString("begindate");
Stirng enddate = rs.getString("enddate");
String[] str1 = begindate.split("-");
String[] str2 = enddate.split("-");
int year1 = Integer.parseInt(str1[0]);
int month1 = Integer.parseInt(str1[1]);
if(month1 == 12){
year1 +=1;
}
int year2 = Integer.parseInt(str2[0]);
int month2 = Integer.parseInt(str2[1]);
if(month2 == 12){
year2 +=1;
}
int year = year2-year1;
System.out.println("相差:"+year);

3. 簡單的Java題目,關於年份、時間、日期的計算。求助!!!

給你代碼

import java.text.SimpleDateFormat;
import java.util.Calendar;

public class TimeTest {

static long CONST_DAY = 3600 * 1000 * 24;

public static void main(String[] args) throws Exception {
SimpleDateFormat input = new SimpleDateFormat("yyyy.MM.dd");
SimpleDateFormat output = new SimpleDateFormat("yyyy年MM月dd日");
// 輸入格式:1991.01.01
// 輸出格式:1991年1月1日比2012年12月12日早X天
String strBefore = "1991.01.01";

Calendar before = Calendar.getInstance();
Calendar after = Calendar.getInstance();
before.setTime(input.parse(strBefore));

int interval = (int) ((after.getTimeInMillis() - before
.getTimeInMillis()) / CONST_DAY);
System.out.println(output.format(before.getTime()) + "比"
+ output.format(after.getTime()) + "早" + interval + "天");
}
}

4. 用java怎麼計算兩個日期之間年數,季度數,月數

這些是確定的數值? 不考慮閏年什麼的?

java.util.Date有方法, getTime(),得到毫秒差,,,,,那兩個時間的毫秒差的結果,再換算成相應的年或季或月

~~~~~~~

5. 用Java判斷一個日期,包括年,月,日三個數,計算這個日期是這一年的第幾天,

可以使用calendar累獲取天數:
已知年月日,直接用年月日構造一個Date或者Calender對象,然後有現成的方法獲得當前日期是所屬年份的第幾天,是當前周的第幾天,當前月的第幾天
比如Calender對象屬性
DAY_OF_YEAR
public static final int DAY_OF_YEAR

get 和 set 的欄位數字,指示當前年中的天數。一年中第一天的值為 1。

6. (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月。

(6)java日期年數擴展閱讀

其他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(days>365){

System.out.println("你輸入的已經超過了365天了");

}else{

System.out.println("第" + days + "天");

}

}

}

輸出的結果如下:

month=12

day=31

第365天

7. java中如何輸出當時的日期和時間

代碼如下:

packagecom.grace.test;

importjava.text.DateFormat;
importjava.text.ParseException;
importjava.text.SimpleDateFormat;
importjava.util.Calendar;
importjava.util.Date;

publicclassshowDate{
publicstaticvoidmain(String[]args)throwsParseException{

Dated=newDate();
Strings=null;

/**輸出格式:MonMay0515:23:58CST2014*/
System.out.println(d);

/**輸出格式:2014-5-5*/
s=DateFormat.getDateInstance().format(d);
System.out.println(s);

/**輸出格式:2014-5-5*/
s=DateFormat.getDateInstance(DateFormat.DEFAULT).format(d);
System.out.println(s);

/**輸出格式:2014年5月5日星期一*/
s=DateFormat.getDateInstance(DateFormat.FULL).format(d);
System.out.println(s);

/**輸出格式:2014-5-5*/
s=DateFormat.getDateInstance(DateFormat.MEDIUM).format(d);
System.out.println(s);

/**輸出格式:14-5-5*/
s=DateFormat.getDateInstance(DateFormat.SHORT).format(d);
System.out.println(s);

/**輸出格式:2014-5-0500:00:00大寫H為24小時制*/
DateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");
s=sdf.format(d);
System.out.println(s);

/**輸出格式:2014-5-0500:00:00小寫h為12小時制*/
DateFormatsdf2=newSimpleDateFormat("yyyy-MM-ddhh:mm:ss");
s=sdf2.format(d);
System.out.println(s);

/**輸出格式:20140505000000*/
DateFormatsdf3=newSimpleDateFormat("yyyyMMddHHmmss");
s=sdf3.format(d);
System.out.println(s);

/**字元串轉換城日期格式*/
s=sdf.format(d);
Datetoday=sdf.parse(s);
System.out.println("字元串轉成日期1:"+today);
System.out.println("字元串轉成日期2:"+sdf.format(today));

/**單獨輸出年月日時分秒等*/
Calendarc=Calendar.getInstance();
System.out.println("年:"+c.get(Calendar.YEAR));
//月份從0開始,加1校正
System.out.println("月:"+(c.get(Calendar.MONTH)+1)+"");
System.out.println("日:"+c.get(Calendar.DAY_OF_MONTH));
System.out.println("時:"+c.get(Calendar.HOUR_OF_DAY));
System.out.println("分:"+c.get(Calendar.MINUTE));
System.out.println("秒:"+c.get(Calendar.SECOND));
System.out.println("當前時間毫秒數:"+c.getTimeInMillis());
System.out.println("當前時間:"+c.getTime());
}
}

8. 幫忙用Java編寫一個表示日期中的年月日:

class YourDate{
int year, month, day;

public YourDate(){
}

public YourDate(int y, int m, int d){
}

public boolean isDate(int y, int m, int d){
//

return false;

}

public YourDate addDate(int days){
//
return new YourDate(..., ..., ...);
}
public int dateDiff(YourDate aDate){
//............................
return 0;
}

public String (){
return "yyyy-MM-DD="+year+"-"+month+"-"+day;
}

}

9. JAVA關於得到當前日期兩年後的日期

那些方法都不推薦使用了,所以顯示黃線,這樣可以實現你想要的,你看下吧,希望對你有幫助

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
int currenYear = calendar.get(Calendar.YEAR);
calendar.set(Calendar.YEAR, currenYear + 2);
java.sql.Date newDate = new java.sql.Date(calendar.getTimeInMillis());

閱讀全文

與java日期年數相關的資料

熱點內容
二進制流轉pdf 瀏覽:913
php判斷爬蟲 瀏覽:567
960除24除4簡便演算法 瀏覽:786
關於解壓英語翻譯 瀏覽:565
python控制鍵盤右鍵 瀏覽:920
php沒有libmysqldll 瀏覽:828
時政新聞app哪個好 瀏覽:906
手機已加密怎麼辦 瀏覽:201
安卓手機截屏怎麼傳到蘋果 瀏覽:527
京管家app哪裡下載 瀏覽:33
文件夾橫向排列的豎向排列 瀏覽:453
51單片機驅動攝像頭模塊 瀏覽:689
政府文件加密沒法轉換 瀏覽:373
android判斷棧頂 瀏覽:331
憑證軟體源碼 瀏覽:860
androidwebview滾動事件 瀏覽:11
如何將電腦上的圖片壓縮成文件包 瀏覽:899
程序員轉金融IT 瀏覽:837
黑馬程序員培訓效果如何 瀏覽:915
本地集成編譯 瀏覽:528