Java 根据两个日期算是相差的日,周,天数
来源:互联网 发布:故宫淘宝实体店地址 编辑:程序博客网 时间:2024/05/20 22:40
前言 : 死并不是唯一报恩方式,人家并不是要你死才救你的,让人家救回一命,又跑去死,是懦夫才会做的事!
package com.shao.calendar;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class Test { private static final String DAY = "day"; private static final String WEEK = "week"; private static final String MONTH = "month"; /** * @param args */ public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String startTime = sdf.format(new Date()); String endTime = "2016-09-01"; int time = timeBettwen(startTime, endTime, WEEK); System.out.println(time); } private static int timeBettwen(String startTime, String endTime, String datetype) { //天数 int days = 0; int weeks = 0; int months = 0; try { //时间转换类 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date1 = sdf.parse(startTime); Date date2 = sdf.parse(endTime); Calendar can1 = Calendar.getInstance(); can1.setTime(date1); Calendar can2 = Calendar.getInstance(); can2.setTime(date2); int year1 = can1.get(Calendar.YEAR); int year2 = can2.get(Calendar.YEAR); Calendar can = null; if(can1.before(can2)){ days -= can1.get(Calendar.DAY_OF_YEAR); days += can2.get(Calendar.DAY_OF_YEAR); weeks -= can1.get(Calendar.WEEK_OF_YEAR); weeks += can2.get(Calendar.WEEK_OF_YEAR); months -= can1.get(Calendar.MONTH); months += can2.get(Calendar.MONTH); can = can1; }else{ days -= can2.get(Calendar.DAY_OF_YEAR); days += can1.get(Calendar.DAY_OF_YEAR); weeks -= can2.get(Calendar.WEEK_OF_YEAR); weeks += can1.get(Calendar.WEEK_OF_YEAR); months -= can2.get(Calendar.MONTH); months += can1.get(Calendar.MONTH); can = can2; } for (int i = 0; i < Math.abs(year2-year1); i++) { days += can.getActualMaximum(Calendar.DAY_OF_YEAR); weeks += can.getActualMaximum(Calendar.WEEK_OF_YEAR); months += can.getActualMaximum(Calendar.MONTH) + 1; can.add(Calendar.YEAR, 1); } } catch (ParseException e) { e.printStackTrace(); } if (datetype.equals(DAY)) { return days; } else if (datetype.equals(WEEK)) { return weeks; } else if (datetype.equals(MONTH)) { return months; } return 0; }}
1 0
- Java 根据两个日期算是相差的日,周,天数
- JAVA 比较两个日期相差的天数
- JAVA 比较两个日期相差的天数
- JAVA 比较两个日期相差的天数
- JAVA 比较两个日期相差的天数
- JAVA 比较两个日期相差的天数
- Java 计算两个日期相差的天数
- Java 计算两个日期相差的天数
- java得到两个日期相差的天数
- Java 计算两个日期相差的天数
- JAVA 计算两个日期相差的天数
- JAVA 比较两个日期相差的天数
- JAVA 比较两个日期相差的天数
- java 获取两个日期的相差天数
- Java 计算两个日期相差的天数
- Java:计算两个日期相差的天数
- JAVA比较两个日期相差的天数
- [JAVA]计算两个日期相差的天数
- ios runtime 动态属性objc_setAssociatedObject和objc_getAssociatedObject
- EditPlus批量更改文件编码
- S51单片机的特点
- 数据结构算法上课讨论
- UVA 1600 BFS
- Java 根据两个日期算是相差的日,周,天数
- Centos7 安装 Nginx
- Leetcode||12.Integer to Roman
- 深入理解JVM读书笔记五: Java内存模型与Volatile关键字
- pandorabox启用SSH并修改密码
- Codeforces 264B Good Sequences【dp+思维】
- butterknife的使用
- 最近一些错误
- 浅谈对JAVA线程池的理解(一)