{"id":951,"date":"2018-09-17T18:45:12","date_gmt":"2018-09-17T09:45:12","guid":{"rendered":"https:\/\/chat-messenger.com\/?p=951"},"modified":"2018-12-23T01:52:45","modified_gmt":"2018-12-22T16:52:45","slug":"difference-month","status":"publish","type":"post","link":"https:\/\/chat-messenger.com\/en\/blog\/java\/difference-month","title":{"rendered":"Java Find the difference between the number of months between two dates"},"content":{"rendered":"<h2 class=\"common_title\"><a name=\"0\">Java Find the difference between the number of months between two dates<\/a><\/h2>\n<p>\nIn Java, two<strong>Difference in the number of months of the date<\/strong>Here is a sample program to find<br \/>\nThe sample program supports the case where the date to be compared is a string ( yyyy\/MM\/dd ), java.util.\n<\/p>\n<p><strong>Difference in number of months<\/strong>The following is the calculation method for determining<\/p>\n<ol>\n<li>First, the two dates are set to one day.<br \/>\n    Calendar.set(Calendar.DATE, 1).<\/li>\n<li>Next, the two dates are compared repeatedly on a month-by-month basis.<br \/>\n    Add or subtract months one month at a time using Calendar.add(Calendar.MONTH, 1 or -1).<\/li>\n<li>Counts the number of repeated comparisons.<\/li>\n<\/ol>\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=\"1\">sample source<\/a><\/h2>\n<p><textarea readonly=\"readonly\" style=\"font-size: 13px;height: 400px;\" class=\"src\" onclick=\"this.focus();this.select()\">\/**<br \/>\n * 2\u3064\u306e\u65e5\u4ed8\u306e\u6708\u6570\u306e\u5dee\u3092\u6c42\u3081\u307e\u3059\u3002<br \/>\n * \u65e5\u4ed8\u6587\u5b57\u5217 strDate1 &#8211; strDate2 \u304c\u4f55\u30f5\u6708\u304b\u3092\u6574\u6570\u3067\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * \u203b\u7aef\u6570\u306e\u65e5\u6570\u306f\u7121\u8996\u3057\u307e\u3059\u3002<br \/>\n *<br \/>\n * @param strDate1    \u65e5\u4ed8\u6587\u5b57\u52171    yyyy\/MM\/dd<br \/>\n * @param strDate2    \u65e5\u4ed8\u6587\u5b57\u52172    yyyy\/MM\/dd<br \/>\n * @return 2\u3064\u306e\u65e5\u4ed8\u306e\u6708\u6570\u306e\u5dee<br \/>\n * @throws ParseException \u65e5\u4ed8\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u304c\u4e0d\u6b63\u306a\u5834\u5408<br \/>\n *\/<br \/>\npublic static int differenceMonth(String strDate1, String strDate2)<br \/>\n    throws ParseException {<br \/>\n    Date date1 = DateFormat.getDateInstance().parse(strDate1);<br \/>\n    Date date2 = DateFormat.getDateInstance().parse(strDate2);<br \/>\n    return differenceMonth(date1,date2);<br \/>\n}<br \/>\n\/**<br \/>\n * 2\u3064\u306e\u65e5\u4ed8\u306e\u6708\u6570\u306e\u5dee\u3092\u6c42\u3081\u307e\u3059\u3002<br \/>\n * java.util.Date \u578b\u306e\u65e5\u4ed8 date1 &#8211; date2 \u304c\u4f55\u30f5\u6708\u304b\u3092\u6574\u6570\u3067\u8fd4\u3057\u307e\u3059\u3002<br \/>\n * \u203b\u7aef\u6570\u306e\u65e5\u6570\u306f\u7121\u8996\u3057\u307e\u3059\u3002<br \/>\n *<br \/>\n * @param date1    \u65e5\u4ed81 java.util.Date<br \/>\n * @param date2    \u65e5\u4ed82 java.util.Date<br \/>\n * @return 2\u3064\u306e\u65e5\u4ed8\u306e\u6708\u6570\u306e\u5dee<br \/>\n *\/<br \/>\npublic static int differenceMonth(Date date1, Date date2) {<br \/>\n    Calendar cal1 = Calendar.getInstance();<br \/>\n    cal1.setTime(date1);<br \/>\n    cal1.set(Calendar.DATE, 1);<br \/>\n    Calendar cal2 = Calendar.getInstance();<br \/>\n    cal2.setTime(date2);<br \/>\n    cal2.set(Calendar.DATE, 1);<br \/>\n    int count = 0;<br \/>\n    if (cal1.before(cal2)) {<br \/>\n        while (cal1.before(cal2)) {<br \/>\n            cal1.add(Calendar.MONTH, 1);<br \/>\n            count&#8211;;<br \/>\n        }<br \/>\n    } else {<br \/>\n        count&#8211;;<br \/>\n        while (!cal1.before(cal2)) {<br \/>\n            cal1.add(Calendar.MONTH, -1);<br \/>\n            count++;<br \/>\n        }<br \/>\n    }<br \/>\n    return count;<br \/>\n}<br \/>\n<\/textarea><\/p>\n<h2 class=\"common_title\"><a name=\"2\">execution (e.g. program)<\/a><\/h2>\n<p>\u25c6Example of Execution<\/p>\n<pre class=\"sample_src\">public static void main(String[] args) {\r\n    int ret = differenceMonth(\"2008\/6\/30\", \"2008\/6\/1\");\r\n    System.out.println(\"Result 1 = \"+ret);\r\n\r\n    ret = differenceMonth(\"2008\/7\/1\", \"2008\/6\/3\");\r\n    System.out.println(\"result 2 = \"+ret);\r\n\r\n    ret = differenceMonth(\"2008\/12\/20\", \"2008\/6\/1\");\r\n    System.out.println(\"result 3 = \"+ret);\r\n\r\n    ret = differenceMonth(\"2010\/6\/20\", \"2008\/6\/1\");\r\n    System.out.println(\"result 4 = \"+ret);\r\n\r\n    ret = differenceMonth(\"2008\/6\/1\", \"2008\/7\/1\");\r\n    System.out.println(\"result 5 = \"+ret);\r\n\r\n    ret = differenceMonth(\"2008\/7\/1\", \"2009\/7\/1\");\r\n    System.out.println(\"result 6 = \"+ret); ret = differenceMonth(\"2008\/7\/1\", \"2009\/7\/1\"); ret = differenceMonth(\"2008\/7\/1\", \"2009\/7\/1\")\r\n}\r\n<\/pre>\n<p>\u25c6Execution Result<\/p>\n<pre class=\"console\">Result 1 = 0\r\nResult 2 = 1\r\nResult 3 = 6\r\nResult 4 = 24\r\nResult 5 = -1\r\nResult 6 = -12\r\n<\/pre>\n<p>\nThis sample program is a Chat&amp;Messenger \"<a href=\"https:\/\/chat-messenger.com\/en\/manual\/schedule_calendar\/calendar\/\" title=\"Calendar and scheduling functions\">Calendar and scheduling functions<\/a>The actual use of the system is done in the \"I'm a fan of this system.<\/p>","protected":false},"excerpt":{"rendered":"<p>Java Find the difference in the number of months between two dates Introducing a sample program in Java that finds the difference in the number of months between two dates [\u2026]<\/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\/en\/wp-json\/wp\/v2\/posts\/951"}],"collection":[{"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/comments?post=951"}],"version-history":[{"count":4,"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/posts\/951\/revisions"}],"predecessor-version":[{"id":1878,"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/posts\/951\/revisions\/1878"}],"wp:attachment":[{"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/media?parent=951"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/categories?post=951"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chat-messenger.com\/en\/wp-json\/wp\/v2\/tags?post=951"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}