Java函数2:计算两个日期相差的天数
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args){
// Scanner s = new Scanner(System.in);
// System.out.println("请输入一个数字");
// int num = s.nextInt();
int SUM = Caluater_date_sub_day(2009,1,25,2008,1,10);
System.out.println(SUM);
}
//判断闰年平年
public static boolean isLeap(int y){
if((y % 4 == 0 && y % 100 != 0) || y % 400 == 0)
return true ;
return false ;
}
//判断一年已经过了多少天
public static int GetDay(int y , int m , int d){
int sum = 0 ;
switch(m){
case 12 : sum += 31 ;
case 11 : sum += 30 ;
case 10 : sum += 31 ;
case 9 : sum += 30 ;
case 8 : sum += 31 ;
case 7 : sum += 31 ;
case 6 : sum += 30 ;
case 5 : sum += 31 ;
case 4 : sum += 30 ;
case 3 : sum += 31 ;
case 2 :
if(isLeap(y) == true)
sum += 29 ;
else
sum += 28 ;
case 1 : sum += 31 ;
sum += d ;
}
return d ;
}
//判断一年还剩下多少天
public static int OthearDay(int y , int m , int d)
{
if(isLeap(y) == true)
return 366 - GetDay(y , m , d);
return 365 - GetDay(y, m, d) ;
}
//判断两个日期相差的天数
public static int Caluater_date_sub_day(int y1,int m1,int d1,int y2,int m2 ,int d2)
{
if(y1 == y2){
int day1 = GetDay(y1, m1, d1) - GetDay(y2, m2, d2) ;
return abs(day1);
}
else if(y1 < y2){
int sum1 = OthearDay(y1, m1, d1) ;
int sum2 = GetDay(y2, m2, d2) ;
int sum3 = 0 ;
for(int i = y1 + 1 ; i < y2 ; i++){
if(isLeap(i))
sum3+=366 ;
else
sum3+=365 ;
}
return sum1+sum2+sum3 ;
}else
{
int sum1 = GetDay(y1, m1, d1) ;
int sum2 = OthearDay(y2, m2, d2) ;
int sum3 = 0 ;
for(int i = y2 + 1 ; i < y1 ; i++){
if(isLeap(i))
sum3+=366 ;
else
sum3+=365 ;
}
return sum1+sum2+sum3 ;
}
}
//计算一个数的绝对值
public static int abs(int num){
return num > 0 ? num : -num ;
}
}
Java函数2:计算两个日期相差的天数的更多相关文章
- MySQL计算两个日期相差的天数、月数、年数
MySQL自带的日期函数TIMESTAMPDIFF计算两个日期相差的秒数.分钟数.小时数.天数.周数.季度数.月数.年数,当前日期增加或者减少一天.一周等等. SELECT TIMESTAMPDIFF ...
- 计算两个日期相差的天数 js php日期 减一年
计算两个日期相差的天数 //sDate1和sDate2是yyyy-MM-dd格式 function dateDiff(sDate1, sDate2) { var aDate, oDate1, oDat ...
- mysql计算两个日期相差的天数
DATEDIFF() 函数可以返回两个日期之间的天数. 如下: SELECT DATEDIFF('2015-06-29','2015-06-12') AS DiffDate 结果得17 SELECT ...
- Java 计算两个日期相差的天数
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
- Java计算两个日期相差的天数
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
- PGSQL-通过SQL语句来计算两个日期相差的天数
这是本人第一次写的~我在某次需求中遇到一个问题,如何在SQL语句中计算出两个日期的天数,然后用那个结果来进行数据的筛选呢?通过网上查阅了资料发现 date_part('day', cast(time1 ...
- php计算两个日期相差的天数
/** * 时间差计算 * * @param Timestamp $time * @return String Time Elapsed */ function time2Units ($time,$ ...
- jquery 计算两个日期相差的天数
<!DOCTYPE html> <html> <head> <meta charset = "utf-8"> <title&g ...
- Java技巧——比较两个日期相差的天数
Java技巧——比较两个日期相差的天数 摘要:本文主要记录了在Java里面如何判断两个日期相差的天数. 判断两个Date类型的日期之间的天数 通过计算毫秒数判断: public static void ...
随机推荐
- Lintcode391 Number of Airplanes in the Sky solution 题解
[题目描述] Given an interval list which are flying and landing time of the flight. How many airplanes ar ...
- 模仿天猫实战【SSM版】——项目起步
前言:现在自己的学习似乎遇到了瓶颈,感觉学习了 SSM 之后有一些迷茫,不知道接下来该往哪里去努力了,我觉得这是个很不好的状态,为了度过这段时期,我准备把天猫模仿下来(给自己找点事做)之后开始去巩固 ...
- 有趣的冷知识:编程中Foo, Bar 到底什么意思?
转自:编程中Foo, Bar 到底什么意思? 1 前言 在很多国外计算机书本和一些第三份开源软件的Demo中经常用到两个英文单词Foo,Bar.这到底是什么意思呢?从步入屌丝界的IT生活见到这两个单词 ...
- CSS布局套路
这篇笔记的目的是记录分别应用float和flex布局的方法.主要是对遇到的问题进行总结. 1.float布局 总结: 1.1 使用float布局要清除浮动,清除的方法是,在父元素添加如下样式 .cle ...
- 牛客网编程练习之PAT乙级(Basic Level):1034 写出这个数
AC代码: import java.util.*; /** * @author CC11001100 */ public class Main { public static void main(St ...
- ACM 数塔
在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的: 有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少? 已经告诉你了,这是个DP的题 ...
- Python3 注释
确保对模块, 函数, 方法和行内注释使用正确的风格 Python中的注释有单行注释和多行注释: Python中单行注释以#开头,例如: #!/usr/bin/python3 #coding=utf-8 ...
- 巧用第三方快速开发Android App 热门第三方SDK及框架
巧用第三方快速开发Android App 热门第三方SDK及框架 历经大半年的时间,终于是把这门课程给录制出来了,也就在今天,正式在慕课网上上线了 项目地址:巧用第三方快速开发Android App ...
- 用豆瓣镜像解决pip安装慢的问题
pip3 install django==1.9 -i http://pypi.douban.com/simple/
- Objective-C方法的实现
Objective-C的方法被两种数据类型描述:一个是选择子(SEL),它用来描述方法的名称;另一个是实现(IMP),它用来描述方法被调用时实际执行的代码(它们基本上只是C函数的指针). 类似于SEL ...