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

Java经常使用日期操作具体解释的更多相关文章

  1. Java中的日期操作

    在日志中常用的记录当前时间及程序运行时长的方法: public void inject(Path urlDir) throws Exception { SimpleDateFormat sdf = n ...

  2. Java中的日期操作 分类: B1_JAVA 2015-02-16 17:55 6014人阅读 评论(0) 收藏

    在日志中常用的记录当前时间及程序运行时长的方法: public void inject(Path urlDir) throws Exception { SimpleDateFormat sdf = n ...

  3. java中的日期操作Calendar和Date

    1. Calendar转Date Calendar calendar = Calendar.getInstance(); Date date = calendar.getTime(); 2. Date ...

  4. Date日期操作

    获取年月日时分秒: package com.util; import java.text.DateFormat; import java.util.Calendar; import java.util ...

  5. java日期操作大全

    摘自(http://www.blogjava.net/i369/articles/83483.html) java日期操作 大全 先来一个:  取得指定月份的第一天与取得指定月份的最后一天  http ...

  6. Java路径操作具体解释

    1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或文件夹在硬盘上真正的路径.(URL和物理路径)比如: C:\xyz\test.txt 代表了test.txt文件的绝对路径.http://w ...

  7. 【Java基础】Jar包结构结构分析和操作具体解释

    作者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 一 ...

  8. java日期操作常用工具

    java日期操作常用工具 package com..util; import java.sql.Timestamp; import java.text.SimpleDateFormat; import ...

  9. Java常用日期操作

    对java中常用的日期操作进行整理. 1.日期格式化 /* * 日期格式化类(必须掌握) * API: * G Era 标志符 Text AD y 年 Year 1996; 96 M 年中的月份 Mo ...

随机推荐

  1. PTA|团体程序设计天梯赛-练习题目题解锦集(C/C++)(持续更新中……)

    PTA|团体程序设计天梯赛-练习题目题解锦集(持续更新中) 实现语言:C/C++:      欢迎各位看官交流讨论.指导题解错误:或者分享更快的方法!! 题目链接:https://pintia.cn/ ...

  2. 模拟--P1328 生活大爆炸版石头剪刀布 题解

    P1328 生活大爆炸版石头剪刀布 这也是打表么?? #include <iostream> using namespace std; static const auto y = []() ...

  3. 条款15:在资源管理类中提供对原始资源的访问(Provide access to raw resources in resource-managing classes)

    NOTE: 1.APIs往往要求访问原始资源(raw resources),所以每一个RAII class应该提供一个“取得其所管理之资源”的办法. 2.对原始资源的访问可能经由显示转换或隐式转换.一 ...

  4. hibernate中时间比较的小笔记

    // 开单时间 if (!"".equals(startDate) && startDate != null) { queryCondition = queryCo ...

  5. Oracle常用内置数据表查询

    Oracle 查询库中所有表名.字段名.字段名说明,查询表的数据条数.表名.中文表名. 查询所有表名:select t.table_name from user_tables t;查询所有字段名:se ...

  6. SQL ROW_NUMBER() 通用分页存储过程

    --提取分页数据,返回总记录数 Create procedure [dbo].[sp_Common_GetDataPaging_ReturnDataCount] ( @SqlString varcha ...

  7. 【LibreOJ10121】与众不同(RMQ,二分)

    题意: 思路: C++ #include<map> #include<set> #include<cmath> #include<cstdio> #in ...

  8. 事件和委托:第 5 页 委托、事件与Observer设计模式

    原文发布时间为:2008-11-01 -- 来源于本人的百度文章 [由搬家工具导入] 委托、事件与Observer设计模式 范例说明 上面的例子已不足以再进行下面的讲解了,我们来看一个新的范例,因为之 ...

  9. python(4)- 字符编码

    一 什么是编码? 基本概念很简单.首先,我们从一段信息即消息说起,消息以人类可以理解.易懂的表示存在.我打算将这种表示称为“明文”(plain text).对于说英语的人,纸张上打印的或屏幕上显示的英 ...

  10. 洛谷——P2916 [USACO08NOV]为母牛欢呼Cheering up the Cows

    https://www.luogu.org/problem/show?pid=2916 题目描述 Farmer John has grown so lazy that he no longer wan ...