Java 计算年份,月份,剩余天数
实现很简单,两者时间进行比较。。。具体看下面代码!
package com.text; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; public class Text1 {
/**
* TODO(description of this method)
*
* @param args
* @author c99999999 kevin 2016年4月25日 下午6:57:24
* @since v1.0
*/
public static void main(String[] args) {
SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd");
Date d = null;
try {
d = df1.parse("2015-1-26");
} catch(ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Calendar foretime = Calendar.getInstance();
foretime.setTime(d);
Calendar nowCalendar = Calendar.getInstance();
int day = nowCalendar.get(Calendar.DAY_OF_MONTH) - foretime.get(Calendar.DAY_OF_MONTH);
int month = nowCalendar.get(Calendar.MONTH) - foretime.get(Calendar.MONTH);
int year = nowCalendar.get(Calendar.YEAR) - foretime.get(Calendar.YEAR);
// 按照减法原理,先day相减,不够向month借;然后month相减,不够向year借;最后year相减。
if(day < 0) {
month -= 1;
nowCalendar.add(Calendar.MONTH, -1);// 得到上一个月,用来得到上个月的天数。 day = day + nowCalendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}
if(month < 0) {
month = (month + 12) % 12;
year--;
}
System.out.println("结果:" + year + "年" + month + "月" + day + "天");
for(int i = 0; i < month; i++) {
nowCalendar.add(Calendar.MONTH, -1);// 得到上一个月,用来得到上个月的天数。 day = day + nowCalendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}
System.out.println("过去时间与现在有:" + year + "年" + "" + day + "天"); }
}
结果:1年3月0天
过去时间与现在有:1年91天
Java 计算年份,月份,剩余天数的更多相关文章
- java输入月份,年份,显示对应月份的天数,
总结:1,输入月份,年份,这需要用Scanner 2.我们已知道12个月份的天数,有30天,31天 3.判断闰年 用switch -case-break语句 4.注意不要忘了写break;判 ...
- C#计算两个时间年份月份天数(根据生日计算年龄)差,求时间间隔
C#计算两个时间年份月份差 DateTime dt1 = Convert.ToDateTime("2008-8-8"); DateTime dt2 = System.DateTim ...
- Javascript实例技巧精选(8)—计算当月剩余天数
>>点击这里下载完整html源码<< 截图如下: 利用Javascript在网页上计算当前月份的剩余天数,相应代码如下: <script language="J ...
- SQL语句更新时间字段的年份、月份、天数、时、分、秒
SQL语句更新时间字段的年份.月份.天数.时.分.秒 --修改d表日期字段的年份update dset birth=STUFF(convert(nvarchar(23),birth,120),1,4, ...
- C#计算两个时间年份月份差
C#计算两个时间年份月份差 https://blog.csdn.net/u011127019/article/details/79142612
- Java计算两个字符串日期之间的天数差
Java计算两个字符串日期之间的天数差 调用方法: public static void main(String[] args) throws ParseException { String a = ...
- java 获取当前年份 月份,当月第一天和最后一天
获取当前年份 月份,当月第一天和最后一天,工作中会经常用到,下面是代码: package basic.day01; import java.text.SimpleDateFormat; import ...
- pyhton 月份和天数的计算
http://stackoverflow.com/questions/546321/how-do-i-calculate-the-date-six-months-from-the-current-da ...
- JAVA 打印指定月份日历
package learnExercise; import java.util.Scanner; public class PrintCalender { /** * @param args */ p ...
随机推荐
- 性能测试工具 wrk 安装与使用
介绍 今天给大家介绍一款开源的性能测试工具 wrk,简单易用,没有Load Runner那么复杂,他和 apache benchmark(ab)同属于性能测试工具,但是比 ab 功能更加强大,并且可以 ...
- Hadoop3 在eclipse中访问hadoop并运行WordCount实例
前言: 毕业两年了,之前的工作一直没有接触过大数据的东西,对hadoop等比较陌生,所以最近开始学习了.对于我这样第一次学的人,过程还是充满了很多疑惑和不解的,不过我采取的策略是还是先让环 ...
- 按照Enterprise Integration Pattern搭建服务系统
在前一篇文章中,我们已经对Enterprise Integration Pattern中所包含的各个组成进行了简单地介绍.限于篇幅(20页Word以内),我并没有深入地讨论各个组成.但是如果要真正地按 ...
- Lesson 20 One man in a boat
Text Fishing is my favourite sport. I often fish for hours without catching anything. But this does ...
- Spring Boot -- 配置切换指南
一般在一个项目中,总是会有好多个环境.比如: 开发环境 -> 测试环境 -> 预发布环境 -> 生产环境 每个环境上的配置文件总是不一样的,甚至开发环境中每个开发者的环境可能也会有一 ...
- 背后的故事之 - 快乐的Lambda表达式(二)
快乐的Lambda表达式 上一篇 背后的故事之 - 快乐的Lambda表达式(一)我们由浅入深的分析了一下Lambda表达式.知道了它和委托以及普通方法的区别,并且通过测试对比他们之间的性能,然后我们 ...
- C++ std::list
std::list template < class T, class Alloc = allocator > class list; List Lists are sequence co ...
- Spark Shuffle原理、Shuffle操作问题解决和参数调优
摘要: 1 shuffle原理 1.1 mapreduce的shuffle原理 1.1.1 map task端操作 1.1.2 reduce task端操作 1.2 spark现在的SortShuff ...
- Electron的环境配置
原文地址http://huisky.com/blog/161218121551123 本文介绍了Electron的环境配置,包括Electron下载.nodejs下载安装.NPM+Bower安装配置. ...
- iOS--碎片知识锦集
知识锦集day01 1.UIView的两个方法: sizeThatFits和 sizeToFit 官方文档上说: - (CGSize)sizeThatFits:(CGSize)size; // ...