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 ...
随机推荐
- RxSwift 系列(八) -- Error Handing Operators
前言 本篇文章我们将学习RxSwift中的错误处理,包括: catchErrorJustReturn catchError retry retry(_:) catchErrorJustReturn 遇 ...
- Redis Cluster集群主从方案
本文介绍一种通过Jedis和Cluster实现Redis集群(主从)的高可用方案,该方案需要使用Jedis2.8.0(推荐),Redis3.0及以上版本(强制). 附:Redis Cluster集群主 ...
- python笔记三(list、tuple)
一.list list的增删改查 #增, classmates.append("nadech") #在末尾追加一个元素 classmates.insert(1,"agui ...
- [Java笔记]继承
继承只是继承框架,而数据没有继承!. 继承不改变父类数据!
- PHP 实例 AJAX 与 XML
在 PHP 中,AJAX 可用来与 XML 文件进行交互式通信,具体的通信过程,请参考本文内容! AJAX XML 实例 下面的实例将演示网页如何通过 AJAX 从 XML 文件读取信息: 实例 ...
- 分布式服务框架Dubbo
随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当网站流量很小时,只需一个应用, ...
- Android艺术开发探索——第二章:IPC机制(下)
Android艺术开发探索--第二章:IPC机制(下) 我们继续来讲IPC机制,在本篇中你将会学习到 ContentProvider Socket Binder连接池 一.使用ContentProvi ...
- 使用Xpath定位元素(和元素定位相关的Xpath语法)
本文主要讲述Xpath语法中,和元素定位相关的语法 第一种方法:通过绝对路径做定位(相信大家不会使用这种方式) By.xpath("html/body/div/form/input" ...
- 关于[[NSNotificationCenter defaultCenter] addObserver不remove后续又收到通知crash问题
今天试了一个小demo,测出一个现象,同步出来:object 作为 observer 监听了通知 A,然后 object 中途被释放执行了dealloc,随后app发出这个通知 A:iOS 6.iOS ...
- 大数据基础知识问答----hadoop篇
handoop相关知识点 1.Hadoop是什么? Hadoop是一个由Apache基金会所开发的分布式系统基础架构.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速 ...