看板 java 關於我們 聯絡資訊
※ 引述《SimonDo (屎門)》之銘言: : 請問一下各位大大 : Date date1 = new Date(2009,02,02,23,00); : Date date2 = new Date(2009,02,01,02,00); : long diff = (date1.getTime() - date2.getTime())/1000/60/60; : out.println(diff); : 輸出的答案是正確的相差時數 45 : Date date1 = new Date(2009,02,01,00,00); : Date date2 = new Date(2009,01,31,00,00); : long diff = (date1.getTime() - date2.getTime())/1000/60/60; : out.println(diff); : 輸出結果卻是 -48 (正負號跟48這數字都令人匪夷所思) : 可以請板上大大替小弟解個惑嗎 感恩~ 假設你是用 java.util.Date 然後,根據本草綱目記載 http://java.sun.com/j2se/1.5.0/docs/api/ java/util/Date.html#Date(int, int, int) 請仔細看 month 的部份... 雖然我不太確定二月三十一號會變成什麼鬼... -- 侃侃長論鮮窒礙 首頁:http://www.psmonkey.idv.tw 眾目睽睽無心顫 Blog:http://ps-think.blogspot.com 煢居少聊常人事 殺頭容易告白難 歡迎參觀 Java 版(@ptt.cc)精華區 \囧/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.114.200.219
TonyQ:它會變成對應的三月份的日期. 04/14 23:15
joylo:超過該月應有的日期 JVM會自動幫你算到下一個去 04/14 23:39