Date类型大多数时间分量计算方法已经被Calendar代替

Date经常用法setTime getTime()

new Date();默认获取当前的时间

SimpleDateFormat用来格式化和解析日期的详细类

匹配日期的字符串

y–>年

M–>月

d–>日

E–>星期

a–>上下午

H–>小时(24小时制)

h–>小时(12小时制)

m–>分

s–>秒

格式化Date返回值为String


SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String result = sdf.format(new Date());
System.out.println(result);

输出结果:2015-07-22 21:17:43

将String解析为Date

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String strDate = "2015-07-22 21:21:01";
Date date = sdf.parse(strDate);
System.out.println(date);

输出结果:

Wed Jul 22 21:21:01 CST 2015

Calender封装了日历信息

经常用法:

getInstance()获取一个系统所在地区的一个Calender的子类实现

通经常使用于实例化Calendar

set(int field,int value)设置时间

get(int field)获取时间分量相应值

getActualMaximum(int field)获取时间分量的最大值

add()对时间分量进行计算

setTime和getTime方法设置和获取时间

综合运用:

商品促销计算程序

需求:

用户输入商品生产日期和保质期。通过程序计算促销日期

计算规则:

到保质期前14添所在的周三为促销日

public class PromotionDate {

    public static void main(String[] args) throws Exception {
Calendar cd = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Scanner sc = new Scanner(System.in); System.out.print("请输入生产日期:");
Date productionDate= sdf.parse(sc.nextLine());//接收字符串并转换为日期型
System.out.print("请输入保质期:");
int days = sc.nextInt(); cd.setTime(productionDate);
cd.add(Calendar.DAY_OF_YEAR, (days - 14));
cd.set(Calendar.DAY_OF_WEEK, Calendar.WEDNESDAY);
String promotionDate = sdf.format(cd.getTime()); //格式化计算后的日期
System.out.println("该产品的促销日期为:"+ promotionDate);
sc.close(); } }

測试结果:

请输入生产日期:2015-01-01

请输入保质期:180

该产品的促销日期为:2015-06-17

最新文章

  1. js兼容总结之获取非行间样式
  2. 如何制作快速加载的HTML页面
  3. tkinter 改变按钮状态
  4. QQ截图取色方法
  5. cardsui-for-android
  6. Adroid_Spinner_ArrayAdapter
  7. HDU 3342
  8. AngularJs练习Demo7
  9. OGG常见问题处理
  10. Hibernate一对一主键映射
  11. 配置RMAN备份环境
  12. MySQL复制之实践篇
  13. 在Linux上编译Hadoop-2.4.0实践与总结
  14. 使用pm2来保证Spring Boot应用稳定运行
  15. MySQL基本概念以及简单操作
  16. Android性能优化-减小图片下载大小
  17. leetcode-algorithms-33 Search in Rotated Sorted Array
  18. NET WebAPi之断点续传下载1
  19. C++中class的类型转换重载
  20. hadoop命令fsck命令

热门文章

  1. 【2018 CCPC网络赛】1004 - 费马大定理&数学
  2. jQuery的on绑定click和直接绑定click区别
  3. linux 服务器 php vue项目部署流程总结
  4. Android Studio修改默认字体大小
  5. struts2接受请求参数
  6. CLR Via CSharp读书笔记(26) - 计算限制的异步操作
  7. 使用using current logfile实现DG备库实时更新
  8. rsync 同步文件重复拷贝问题
  9. 【置换】G. Poker 2.0
  10. Vim enhance part1