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 ...
随机推荐
- bootstrap插件fileinput.js 显示无法上传失败
哪怕图片已经传到服务器上了 依然显示出错 // 处理完成后,必须返回一个json数据,否则会报错误 JSONObject jsonObject = new JSONObject(); jsonObje ...
- 修改原生单选框样式(vue单选组件)
一.效果如图 二.实现 修改单选样式 //html <div class="radio-wrap"> <input type="radio" ...
- 2. struct A 和 typedef struct A
2. struct A 和 typedef struct A 2.1 struct A struct A{}定义一个名为struct A的结构体. 下例定义了struct A同时,声明了两个变量(注意 ...
- HashSet<T>的妙用
HashSet<int> hs = new HashSet<int>(); var ret = hs.Add(1); //ret==true var ret2 = hs.Ad ...
- Docker常见仓库MySQL
MySQL 基本信息 MySQL 是开源的关系数据库实现. 该仓库提供了 MySQL 各个版本的镜像,包括 5.6 系列.5.7 系列等. 使用方法 默认会在 3306 端口启动数据库. $ sudo ...
- Python3 CGI编程
什么是CGI CGI 目前由NCSA维护,NCSA定义CGI如下: CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP服务器,提供同客户 ...
- Bootstrap3 表单-基本表单
单独的表单控件会被自动赋予一些全局样式.所有设置了 .form-control 类的 <input>.<textarea> 和 <select> 元素都将被默认设置 ...
- git > 2.3 实现同步盘的功能
话不多说,简单粗暴 http://stackoverflow.com/questions/35643201/how-to-set-up-a-sychronous-directory-in-remote ...
- Mac小技巧:快速查看指定应用程序的所有窗口
我们知道在Mac中快速在系统所有程序中切换得快捷键为: cmd + tab 不过有时我们需要快速查看某一个程序的所有窗口,那又该如何呢? 以下方法在MacOS 10.12中测试成功! Mac默认该功能 ...
- Web自动化框架LazyUI使用手册(4)--控件抓取工具Elements Extractor详解(批量抓取)
概述 前面的一篇博文详细介绍了单个控件抓取的设计思路&逻辑以及使用方法,本文将详述批量控件抓取功能. 批量抓取:打开一个web页面,遍历页面上所有能被抓取的元素,获得每个元素的iframe.和 ...