在javaSE阶段,Date类和Calendar类以后会经常用到 这两个类当中的一些常用方法 通过两个demo 进行学习和练习

第一个要求如下:让用户自己输入yyyy-MM-dd 格式的年月日 然后得出到今天为止活了多少天 ,这里面用到SimpleDateFormat Scanner 代码如下

第二个要求   利用Calendar计算闰年 代码如下

package cn.lijun.homework;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

public class DateTest {
public static void main(String[] args) throws ParseException {
/*
* 计算活了多少天
要求用户自己输入出生年月日 格式为:YYYY-MM-dd

两个日期变成毫秒值,减法
*
* */
//fun();
fun1();
}
public static void fun() throws ParseException{
//1 提示用户输入日期 以及格式
System.out.println("请输入出生的日期 并且格式为 YYYY-MM-dd");
//2 获取键盘输入 出生的日期
String birthday = new Scanner(System.in).next();
//3 创建SimpleDateFormat 对象 写日期的格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//4 将字符串日期 转成Date对象
Date birthdayDate = sdf.parse(birthday);

//5 获得今天的日期对象
Date today= new Date();
//6 将两个日期转毫秒值
long birthdaym = birthdayDate.getTime();
long todaym = today.getTime();
//7 二者相减 就是活的毫秒数、
long time = todaym-birthdaym;
//8判断 time是否小于0
if(time<0){
System.out.println("您输入的出生日期代表您还没有出生");
}else{
System.out.println("活了"+time/1000/60/60/24+"天");
}

}
/*
* 闰年计算
* 2000 3000
* 高级的算法: 日历设置到指定年份的3月1日,add向前偏移1天,获取天数,29闰年
*/
public static void fun1(){
Calendar c = Calendar.getInstance();
//1将日历设置成2019年3月1日
c.set(2019,2,1);
//2 将日历往前偏移一天
c.add(Calendar.DAY_OF_MONTH,-1);
//3 get 获取天数
int day = c.get(Calendar.DAY_OF_MONTH);
System.out.println(day);
}
}

最新文章

  1. 关于 iOS 加密的一些详谈
  2. linux命令每日一练习 显示一个文件的制定行---查看命令帮助信息
  3. Educational Codeforces Round 16 A B C E
  4. 第一个C语言编译器是怎样编写的?
  5. 【wikioi】1403 新三国争霸(dp+kruskal)
  6. Nginx部署ThinkPHP项目的办法
  7. ACM题目————Subsequence
  8. asm单机dg dbca报错ORA-01031 CRS-2676,rman restore主库控制文件报错ORA-15081
  9. BZOJ 1452 Count
  10. Angular2-之开发环境搭建/调试环境配置
  11. 得到client真IP住址
  12. python一些模块的exe安装包在windows的64位系统里识别不到已安装Python目录的解决方法
  13. Android 5.0 开发者官方网站疏理知识结构
  14. .net项目svn项目管理文件清单
  15. Struts2 Action接收POST请求JSON数据及其实现解析
  16. ASP.NET Core基础1:应用启动流程
  17. 《JavaScript》高级程序设计第21章:Ajax和Comet,jsonp
  18. python3基础: 元组tuple、 列表list、 字典dict、集合set。 迭代器、生成器
  19. Moco服务器jar包实现简易的API搭建
  20. node通过QQ邮箱发送邮件

热门文章

  1. Django之用户认证系统分析
  2. 2825 codevs危险的组合(递推)
  3. Hibernate检索方式(转载)
  4. 使用PowerShell在Azure China创建Data Warehouse
  5. 蓝桥杯 历届试题 PREV-2 打印十字图
  6. HZ 和 usleep最小睡眠时间(低精度定时器)
  7. JDK 8 - java.util.HashMap 实现机制分析
  8. mybatis 学习四(下) SQL语句映射文件增删改查、参数、缓存
  9. Java 的标识符
  10. Codeforces Round #310 (Div. 2)556ABCDE