Calendar和System

一、Calendar中add()和roll()的区别

Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEARMONTHDAY_OF_MONTHHOUR日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

@add()  时间联动     roll()时间不联动

 1 import java.util.Calendar;
 2 import java.util.Date;
 3 public class CalendarTest {
 4   public static void main(String[] args) {
 5     String shijian="2015/02/03 10:10:10";
 6     Date date=ee.Stringz(shijian);
 7     //System.out.println(ee.showDate(date));;
 8     test1(date);
 9     test2(date);
10     test3(date);
11 }
12 
13 private static void test1(Date date) {
14     //生成一个日历,应为Calendar为接口,不能有对象,所以只能用getInstance()生成日历
15     Calendar aa=Calendar.getInstance();
16     aa.setTime(date);
17     int  year=aa.get(Calendar.YEAR);
18     int month=aa.get(Calendar.MONTH)+1;//java规定从0开始记月份
19     int day=aa.get(Calendar.DATE);
20     System.out.println(year+"/"+month+"/"+day);
21 }
22 /**
23  * roll函数只会改变相应的字段变量,而不会时间联动
24  * 即本例中,当增加月份超过12 时,年份不加1
25  * 
26  * */
27 private static void test2(Date date){
28     Calendar aa=Calendar.getInstance();
29     aa.setTime(date);
30     aa.roll(Calendar.MONTH,1);
31     System.out.println(aa.get(Calendar.MONTH)+1);//输出3
32     System.out.println(aa.get(Calendar.YEAR));//输出2015
33 }
34 /**
35  *add函数实现时间联动
36  * 即本例中,当增加月份超过12 时,年份加1
37  * 
38  * */
39 private static void test3(Date date){
40     Calendar aa=Calendar.getInstance();
41     aa.setTime(date);
42     aa.add(Calendar.MONTH,13);
43     System.out.println(aa.get(Calendar.MONTH)+1);//输出2
44     System.out.println(aa.get(Calendar.YEAR));//输出2016
45 }
46 }

 二、System类

public final class Systemextends Object

System 类包含一些有用的类字段和方法。它不能被实例化。

System 类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。

@输出毫秒级时间

System.out.println(System.currentTimeMillis());

@退出系统

System.exit(0);

 

posted on 2016-05-27 14:08  lgshiwoo  阅读(204)  评论(0编辑  收藏  举报