{"id":954,"date":"2018-09-17T18:48:48","date_gmt":"2018-09-17T09:48:48","guid":{"rendered":"https:\/\/chat-messenger.com\/?p=954"},"modified":"2018-12-23T01:52:35","modified_gmt":"2018-12-22T16:52:35","slug":"calculating-dates","status":"publish","type":"post","link":"https:\/\/chat-messenger.com\/zh_tw\/\u90e8\u843d\u683c\/java\/\u8a08\u7b97\u65e5\u671f","title":{"rendered":"Java \u65e5\u671f\/\u6642\u9593\u8a08\u7b97 \u52a0\u6cd5\u8207\u6e1b\u6cd5\u8b8a\u5f97\u7c21\u55ae"},"content":{"rendered":"<h2 class=\"common_title\"><a name=\"0\">Java <strong>\u65e5\u671f\/\u6642\u9593\u8a08\u7b97<\/strong>\u52a0\u6cd5\u548c\u6e1b\u6cd5\u8b8a\u5f97\u7c21\u55ae<\/a><\/h2>\n<p>\n\u8f15\u9b06\u4f7f\u7528 Java<strong>\u8a08\u7b97\u65e5\u671f\/\u6642\u9593\u7684\u52a0\/\u6e1b<\/strong>\u4ecb\u7d39\u4e00\u500b\u7bc4\u4f8b\u7a0b\u5f0f\u4f86\u57f7\u884c\u6b64\u64cd\u4f5c\u3002<br \/>\u7bc4\u4f8b\u7a0b\u5f0f\u7684\u7279\u9ede\u5982\u4e0b\u3002<\/p>\n<ul>\n<li>\u50b3\u56de\u76ee\u524d\u6216\u4efb\u610f\u65e5\u671f\/\u6642\u9593\u52a0\u4e0a\u6216\u6e1b\u53bb\u6307\u5b9a\u6642\u9593\u91cf\u7684\u7d50\u679c\u3002<\/li>\n<li>\u5982\u679c\u6307\u5b9a\u6b63\u6578\uff0c\u5247\u6642\u9593\u5c07\u63d0\u524d\uff1b\u5982\u679c\u6307\u5b9a\u8ca0\u6578\uff0c\u5247\u6642\u9593\u5411\u5f8c\u3002<br \/>\n\u4f8b\u5982\uff0c\u5f9e\u76ee\u524d\u65e5\u671f\u548c\u6642\u9593\u7b97\u8d77 10 \u5929\u524d\u3002<strong>\u8a08\u7b97<\/strong>\u5982\u679c\u662f\u9019\u6a23\uff0c\u5247\u4ee5\u4e0b\u5167\u5bb9\u5c07\u9069\u7528\u3002<br \/>\n<b>\u65e5\u66c6 cal = addMonth(-10);<\/b>\n<\/li>\n<li>\u60a8\u53ef\u4ee5\u70ba\u5e74\u3001\u6708\u3001\u65e5\u3001\u5c0f\u6642\u3001\u5206\u9418\u3001\u79d2\u548c\u6beb\u79d2\u6642\u9593\u6b04\u4f4d\u8a2d\u5b9a\u4efb\u610f\u6642\u9593\u91cf\u3002<br \/>\n\u53e6\u5916\uff0c\u76f8\u5c0d\u65bc\u6307\u5b9a\u6642\u9593<strong>\u8a08\u7b97<\/strong>\u5982\u679c\u662f\u9019\u6a23\uff0c\u8acb\u5c07 Calendar \u985e\u5225\u4f5c\u70ba\u53c3\u6578\u50b3\u905e\u3002<br \/>\n\u4f8b\u5982\uff0c\u4ee5\u4e0b\u7a0b\u5f0f\u78bc\u6703\u5c07\u6307\u5b9a\u7684 Calendar \u5be6\u4f8b\u63d0\u524d\u4e00\u5e74\u3002<br \/>\n<b>\u65e5\u66c6 cal = add(\u201c\u6307\u5b9a\u65e5\u66c6\u201d,1,0,0,0,0,0,0);<\/b>\n<\/li>\n<li>\u5982\u679c\u6bcf\u500b\u6642\u9593\u6b04\u4f4d\u7684\u503c\u8d85\u51fa\u5176\u7bc4\u570d\uff0c\u5247\u905e\u589e\u6216\u905e\u6e1b\u4e0b\u4e00\u500b\u8f03\u5927\u7684\u6642\u9593\u6b04\u4f4d\u3002<br \/>\n\u4f8b\u5982\uff0c\u4ee5\u4e0b\u6307\u4ee4\u6703\u5c07\u76ee\u524d\u6642\u9593\u5411\u524d\u79fb\u52d5 1 \u5c0f\u6642 5 \u5206\u9418\u3002<br \/>\n<b>\u65e5\u66c6 cal = addMinute(65);<\/b>\n<\/li>\n<\/ul>\n<p><script type=\"text\/javascript\" src=\"https:\/\/chat-messenger.com\/js\/common.js?dd12sssas2223\" charset=\"UTF-8\"><\/script><br \/>\n<script type=\"text\/javascript\"> writePR(); <\/script><\/p>\n<h2 class=\"common_title\"><a name=\"2\">\u7bc4\u4f8b\u7a0b\u5f0f<\/a><\/h2>\n<p><textarea readonly=\"readonly\" style=\"font-size: 13px;height: 400px;\" class=\"src\" onclick=\"this.focus();this.select()\">\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u3010\u5e74\u6570\u3011\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * @param addYera \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u5e74\u6570<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar addYera(int addYera){<br \/>\n    return add(null,addYera,0,0,0,0,0,0);<br \/>\n}<br \/>\n\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u3010\u6708\u6570\u3011\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * @param addMonth \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u6708\u6570<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar addMonth(int addMonth){<br \/>\n    return add(null,0,addMonth,0,0,0,0,0);<br \/>\n}<br \/>\n\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u3010\u65e5\u6570\u3011\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * @param addDate \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u65e5\u6570<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar addDate(int addDate){<br \/>\n    return add(null,0,0,addDate,0,0,0,0);<br \/>\n}<br \/>\n\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u3010\u6642\u9593\u3011\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * @param addHour \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u6642\u9593<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar addHour(int addHour){<br \/>\n    return add(null,0,0,0,addHour,0,0,0);<br \/>\n}<br \/>\n\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u3010\u5206\u3011\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * @param addMinute \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u5206<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar addMinute(int addMinute){<br \/>\n    return add(null,0,0,0,0,addMinute,0,0);<br \/>\n}<br \/>\n\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u3010\u79d2\u3011\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * @param addSecond \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u79d2<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar addSecond(int addSecond){<br \/>\n    return add(null,0,0,0,0,0,addSecond,0);<br \/>\n}<br \/>\n\/**<br \/>\n * \u73fe\u5728\u306e\u65e5\u4ed8\u30fb\u6642\u523b\u304b\u3089\u6307\u5b9a\u306e\u6642\u9593\u91cf\u3092\u52a0\u7b97\u30fb\u6e1b\u7b97\u3057\u305f\u7d50\u679c\u3092\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * \u5e74\u3001\u6708\u3001\u65e5\u3001\u6642\u9593\u3001\u5206\u3001\u79d2\u3001\u30df\u30ea\u79d2\u306e\u5404\u6642\u9593\u30d5\u30a3\u30fc\u30eb\u30c9\u306b\u5bfe\u3057\u3001<br \/>\n * \u4efb\u610f\u306e\u6642\u9593\u91cf\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u3002<br \/>\n * \u305f\u3068\u3048\u3070\u3001\u73fe\u5728\u306e\u65e5\u4ed8\u6642\u523b\u304b\u3089 10 \u65e5\u524d\u3092\u8a08\u7b97\u3059\u308b\u5834\u5408\u306f\u4ee5\u4e0b\u3068\u306a\u308a\u307e\u3059\u3002<br \/>\n * Calendar cal = add(null,0,0,-10,0,0,0,0);<br \/>\n *<br \/>\n * \u5404\u6642\u9593\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u5024\u304c\u305d\u306e\u7bc4\u56f2\u3092\u8d85\u3048\u305f\u5834\u5408\u3001\u6b21\u306e\u5927\u304d\u3044\u6642\u9593\u30d5\u30a3\u30fc\u30eb\u30c9\u304c<br \/>\n * \u5897\u5206\u307e\u305f\u306f\u6e1b\u5206\u3055\u308c\u307e\u3059\u3002<br \/>\n * \u305f\u3068\u3048\u3070\u3001\u4ee5\u4e0b\u3067\u306f1\u6642\u9593\u30685\u5206\u9032\u3081\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002<br \/>\n * Calendar cal = add(null,0,0,0,0,65,0,0);<br \/>\n *<br \/>\n * \u5404\u6642\u9593\u30d5\u30a3\u30fc\u30eb\u30c9\u306b\u8a2d\u5b9a\u3059\u308b\u6570\u91cf\u304c0\u306e\u5834\u5408\u306f\u3001\u73fe\u5728\u306e\u5024\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3059\u3002<br \/>\n * java.util.GregorianCalendar\u306e\u5185\u90e8\u51e6\u7406\u3067\u306f\u4ee5\u4e0b\u306e\u5206\u5c90\u3092\u884c\u3063\u3066\u3044\u308b\u3002<br \/>\n *     if (amount == 0) {<br \/>\n *         return;<br \/>\n *     }<br \/>\n *<br \/>\n * @param cal \u65e5\u4ed8\u6642\u523b\u306e\u6307\u5b9a\u304c\u3042\u308c\u3070\u30bb\u30c3\u30c8\u3059\u308b\u3002<br \/>\n *     null\u306e\u5834\u5408\u3001\u73fe\u5728\u306e\u65e5\u4ed8\u6642\u523b\u3067\u65b0\u3057\u3044Calendar\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u751f\u6210\u3059\u308b\u3002<br \/>\n * @param addYera \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u5e74\u6570<br \/>\n * @param addMonth \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u6708\u6570<br \/>\n * @param addDate \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u65e5\u6570<br \/>\n * @param addHour \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u6642\u9593<br \/>\n * @param addMinute \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u5206<br \/>\n * @param addSecond \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u79d2<br \/>\n * @param addMillisecond \u52a0\u7b97\u30fb\u6e1b\u7b97\u3059\u308b\u30df\u30ea\u79d2<br \/>\n * @return    \u8a08\u7b97\u5f8c\u306e Calendar \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3002<br \/>\n *\/<br \/>\npublic static Calendar add(Calendar cal,<br \/>\n                           int addYera,int addMonth,int addDate,<br \/>\n                           int addHour,int addMinute,int addSecond,<br \/>\n                           int addMillisecond){<br \/>\n    if (cal == null) {<br \/>\n        cal = Calendar.getInstance();<br \/>\n    }<br \/>\n    cal.add(Calendar.YEAR, addYera);<br \/>\n    cal.add(Calendar.MONTH, addMonth);<br \/>\n    cal.add(Calendar.DATE, addDate);<br \/>\n    cal.add(Calendar.HOUR_OF_DAY, addHour);<br \/>\n    cal.add(Calendar.MINUTE, addMinute);<br \/>\n    cal.add(Calendar.SECOND, addSecond);<br \/>\n    cal.add(Calendar.MILLISECOND, addMillisecond);<br \/>\n    return cal;<br \/>\n}<br \/>\n<\/textarea><br \/>\n<\/p>\n<h2 class=\"common_title\"><a name=\"3\">\u57f7\u884c<\/a><\/h2>\n<p>\n\u5728\u7bc4\u4f8b\u7a0b\u5f0f\u4e2d\uff0c\u4f5c\u70ba\u8fd4\u56de\u503c<strong>\u8a08\u7b97\u5f8c<\/strong>\u7531\u65bc\u6211\u5011\u53ef\u4ee5\u7372\u5f97\u4fdd\u5b58\u65e5\u671f\u7684 java.util.Calendar \u5c0d\u8c61\uff0c\u56e0\u6b64\u6211\u5011\u4f7f\u7528 java.util.Calendar#getTime() \u65b9\u6cd5\u5c07\u5176\u8f49\u63db\u70ba java.util.Date\uff0c\u4e26\u4f7f\u7528 java.text.SimpleDateFormat \u5c07\u5176\u8f49\u63db\u70ba\u65e5\u671f\u5b57\u4e32\u3002\n<\/p>\n<p>\u25c6\u57f7\u884c\u7bc4\u4f8b<\/p>\n<pre class=\"sample_src\">public static void main(String[] args) { SimpleDateFormat f = new SimpleDateFormat(&quot;yyyy\/MM\/dd HH:mm:ss&quot;); System.out.println(&quot;\u7576\u524d\u65e5\u671f\/\u6642\u9593 = &quot;+ f.format( add (null,0,0,0,0,0,0,0).getTime())); System.out.println(&quot;1 \u5e74\u5167\u7684\u65e5\u671f\/\u6642\u9593= &quot;+ f.format(addYera(1) .getTime ())); System.out.println(&quot;1 \u500b\u6708\u524d\u7684\u65e5\u671f\/\u6642\u9593= &quot;+ f.format(addMonth(-1).getTime())); System.out.println(&quot;3 \u5c0f\u6642\u5f8c\u7684\u65e5\u671f\/\u6642\u9593= &quot;+ f.format(addHour(3).getTime())); System.out.println(&quot;\u65e5\u671f\/\u6642\u959330 \u5c0f\u6642\u524d= &quot;+ f.format(addHour(-30).getTime () )); System.out.println(&quot;40 \u5206\u9418\u5f8c\u7684\u65e5\u671f\/\u6642\u9593= &quot;+ f.format(addMinute(40).getTime())); System.out.println(&quot;80 \u79d2\u5f8c\u7684\u65e5\u671f\/\u6642\u9593= &quot;+ f.format (addMinute(40).getTime())); Time = &quot;+ f.format(addSecond(80).getTime())); System.out.println(&quot;1 \u500b\u6708\u524d4 \u5929\u7684\u65e5\u671f\/\u6642\u9593= &quot;+ f.format(add(null,0, -1,4,0,0,0,0).getTime())); }\r\n<\/pre>\n<p>\u25c6\u57f7\u884c\u7d50\u679c<br \/>\n\u76ee\u524d\u65e5\u671f\u548c\u6642\u9593\u662f 2008\/03\/25 00:00:00\u3002<\/p>\n<pre class=\"console\">\u76ee\u524d\u65e5\u671f\/\u6642\u9593= 2008\/03\/25 00:00:00 \u4e00\u5e74\u5f8c\u7684\u65e5\u671f\/\u6642\u9593= 2009\/03\/25 00:00:00 \u4e00\u500b\u6708\u524d\u7684\u65e5\u671f\/\u6642\u9593= 2008\/02\/25 00:00 : 00 \u65e5\u671f3 \u5c0f\u6642\u5f8c\u7684\u65e5\u671f\u548c\u6642\u9593= 2008\/03\/25 03:00:00 30 \u5c0f\u6642\u524d\u7684\u65e5\u671f\u548c\u6642\u9593= 2008\/03\/23 18:00:00 40 \u5206\u9418\u5f8c\u7684\u65e5\u671f\u548c\u6642\u9593= 2008\/03\/ 25 00:40:00 80 \u79d2\u5f8c\u7684\u65e5\u671f\u548c\u6642\u9593 = 2008\/03\/25 00:01:20 1 \u500b\u6708\u524d 4 \u5929\u7684\u65e5\u671f\u548c\u6642\u9593 = 2008\/02\/29 00:00:00\r\n<\/pre>\n<p>*2008\u5e74\u662f\u958f\u5e74\uff0c\u6240\u4ee52\u6708\u7684\u6700\u5f8c\u4e00\u5929\u662f29\u865f\u3002<\/p>\n<p>\u6b64\u7bc4\u4f8b\u7a0b\u5f0f\u9069\u7528\u65bc Chat&amp;Messenger\u3002<a href=\"https:\/\/chat-messenger.com\/zh_tw\/\u624b\u52d5\u7684\/schedule_calendar\/\u65e5\u66c6\/\" title=\"\u65e5\u66c6\/\u65e5\u7a0b\u7ba1\u7406\u529f\u80fd\">\u65e5\u66c6\/\u65e5\u7a0b\u7ba1\u7406\u529f\u80fd<\/a>\u201d\u5be6\u969b\u4f7f\u7528\u904e\u3002<\/p>","protected":false},"excerpt":{"rendered":"<p>Java \u65e5\u671f\/\u6642\u9593\u8a08\u7b97\u8f15\u9b06\u52a0\/\u6e1b\u4e00\u500b\u7bc4\u4f8b\u7a0b\u5e8f\uff0c\u7528\u65bc\u5728 Java \u4e2d\u8f15\u9b06\u8a08\u7b97\u65e5\u671f\/\u6642\u9593\u7684\u52a0\/\u6e1b [...]<\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"swell_btn_cv_data":""},"categories":[19],"tags":[],"_links":{"self":[{"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/posts\/954"}],"collection":[{"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/comments?post=954"}],"version-history":[{"count":6,"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/posts\/954\/revisions"}],"predecessor-version":[{"id":1877,"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/posts\/954\/revisions\/1877"}],"wp:attachment":[{"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/media?parent=954"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/categories?post=954"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chat-messenger.com\/zh_tw\/wp-json\/wp\/v2\/tags?post=954"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}