Calendar中的一些方法 设置闹钟相关

来源:互联网 发布:linux 存放.rpm的目录 编辑:程序博客网 时间:2024/05/17 11:05

1.时区(TimeZone)和地区(Locale)

时区:这个名称有点不准确,其实应该叫“时间体系和偏移量”。

时间体系有很多种,古时中国人喜欢用皇帝名+登基时间来表示时间,这也是一种时间体系。现在比较常用的时间体系是GMT和UTC。GMT也就是格林威治时间,也叫格林尼治时间,从1970-01-01 00:00:00开始计算。UTC是在GMT基础上设计的,两者误差很小,作为凡人可以忽略。如果是要求很高的军工行业,则请查阅其他资料吧。

偏移量主要是针对GMT和UTC体系把世界划分为24个区而设计的。常见的东八区“GMT+8”。

地区:所属地区。在中国一个星期的第一天是星期一,在西方第一天是星期日,这个小细节不注意可能会导致计算星期的时候出问题。

[java] view plain copy
  1. // 全局显示定义最省事安全  
  2. Locale.setDefault(Locale.ENGLISH);//推荐用英语地区的算法  
  3. TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));  
  4.           
  5. // 局部定义  
  6. Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT+8"), Locale.ENGLISH);  
2.初始值

代码如下,值得指出的是由于我们的时区设置是GMT+8,所以打印格林威治时间得到的是1970-01-01 08:00:00。

[java] view plain copy
  1. Calendar cal = Calendar.getInstance();//得到当前时间        
  2. cal.setTimeInMillis(0);//转换成格林威治时间  

3.获取值

[java] view plain copy
  1. cal.get(Calendar.YEAR);//年  
  2. cal.get(Calendar.MONTH) + 1;//月(脑残要+1)  
  3. cal.get(Calendar.DATE);//日  
  4. cal.get(Calendar.HOUR_OF_DAY);//时  
  5. cal.get(Calendar.MINUTE);//分  
  6. cal.get(Calendar.SECOND);//秒  
  7. cal.get(Calendar.DAY_OF_WEEK);//星期(<span style="font-family: Arial, Helvetica, sans-serif;">Locale.ENGLISH情况下,</span><span style="font-family: Arial, Helvetica, sans-serif;">周日是1,剩下自己推算)</span>  
如果拿时间不是为了计算而是展示出来,肯定用SimpleDateFormart了,模式为yyyy-MM-dd HH:mm:ss

4.设置值

[java] view plain copy
  1. cal.set(201354134451);//年月日时分秒(月份0代表1月)  
  2. cal.set(Calendar.YEAR, 2014);//年  
  3. cal.set(Calendar.MONTH, 7);//月(月份0代表1月)  
  4. cal.set(Calendar.DATE, 11);//日  
  5. cal.set(Calendar.HOUR_OF_DAY, 15);//时  
  6. cal.set(Calendar.MINUTE, 33);//分  
  7. cal.set(Calendar.SECOND, 32);//秒  
  8. //周比较含糊免了  

5.运算值

[java] view plain copy
  1. cal.add(Calendar.YEAR, 1);//年  
  2. cal.add(Calendar.MONTH, 1);//月  
  3. cal.add(Calendar.DATE, 1);//日  
  4. cal.add(Calendar.HOUR_OF_DAY, -1);//时  
  5. cal.add(Calendar.MINUTE, 1);//分  
  6. cal.add(Calendar.SECOND, 1);//秒  
  7. cal.add(Calendar.DATE, 7);//周  


原创粉丝点击