java 獲取上個月_Java自學-日期 Calendar
阿新 • • 發佈:2021-01-31
技術標籤:java 獲取上個月
Java的Calendar類
Calendar類即日曆類,常用於進行“翻日曆”,比如下個月的今天是哪天
示例 1 : Calendar與Date進行轉換
採用單例模式獲取日曆物件Calendar.getInstance();
package date; // import java.util.Calendar; import java.util.Date; public class TestDate { public static void main(String[] args) { //採用單例模式獲取日曆物件Calendar.getInstance(); Calendar c = Calendar.getInstance(); //通過日曆物件得到日期物件 Date d = c.getTime(); Date d2 = new Date(0); c.setTime(d2); //把這個日曆,調成日期 : 1970.1.1 08:00:00 } }
示例 2 : 翻日曆
add方法,在原日期上增加年/月/日
set方法,直接設定年/月/日
package date; import java.text.SimpleDateFormat; // import java.util.Calendar; import java.util.Date; public class TestDate { private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static void main(String[] args) { Calendar c = Calendar.getInstance(); Date now = c.getTime(); // 當前日期 System.out.println("當前日期:t" + format(c.getTime())); // 下個月的今天 c.setTime(now); c.add(Calendar.MONTH, 1); System.out.println("下個月的今天:t" +format(c.getTime())); // 去年的今天 c.setTime(now); c.add(Calendar.YEAR, -1); System.out.println("去年的今天:t" +format(c.getTime())); // 上個月的第三天 c.setTime(now); c.add(Calendar.MONTH, -1); c.set(Calendar.DATE, 3); System.out.println("上個月的第三天:t" +format(c.getTime())); } private static String format(Date time) { return sdf.format(time); } }
練習: Calendar
找出下個月的倒數第3天是哪天
答案:
package date; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class TestDate { private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static void main(String[] args) { Calendar c = Calendar.getInstance(); System.out.println("今天是:" + format( c.getTime())); //先翻到下下個月 c.add(Calendar.MONTH,2); //設定到月初 c.set(Calendar.DATE,1); //再往回翻3天 c.add(Calendar.DATE,-3); Exception e; System.out.println("下個月倒數第三天是:" + format(c.getTime())); } private static String format(Date time) { return sdf.format(time); } }