⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 identitytwodays.java

📁 JAVA实现的酒店管理系统
💻 JAVA
字号:
package tools;

/*
 * @Author:黄顺武
 * Create Time:2008-2-22
 * Description:根据给定的两个日期参数,判断两个日期的各种关系
 */
import java.util.Date;
import java.util.Calendar;

public class IdentityTwoDays {

	private Date firstDate = null;
	private Date secondDate = null;

	public IdentityTwoDays() {
	}

	public void setFirstDate(String firstDateStr) {
		String divideChar = getDateDivider(firstDateStr);
		this.firstDate = GetDateFromDateStr.getDate(firstDateStr, divideChar);
	}

	public void setFirstDate(Date firstDate) {
		this.firstDate = firstDate;
	}

	public Date getFirstDate() {
		return firstDate;
	}

	public void setSecondDate(String secondDateStr) {
		String divideChar = getDateDivider(secondDateStr);
		this.secondDate = GetDateFromDateStr.getDate(secondDateStr, divideChar);
	}

	public void setSecondDate(Date secondDate) {
		this.secondDate = secondDate;
	}

	public Date getSecondDate() {
		return secondDate;
	}

	public String getDateDivider(String dateStr) {// 给日期值定字符串得到分隔符并返回
		char divideChar = '0';
		int strLength = 0;
		if (dateStr != null) {
			strLength = dateStr.length();
		}
		for (int countBase = 0; countBase < strLength; countBase++) {
			if (!Character.isDigit(dateStr.charAt(countBase))) {
				divideChar = dateStr.charAt(countBase);// 得到分隔符
				break;
			}
		}
		if (divideChar != '0') {
			return divideChar + "";
		} else {
			return null;
		}
	}

	public int daysNotEqual() {// 在两个日期参数都完成赋值后判断是否是同一天,是返回零,否则返回相差的天数
		if (firstDate.toString().equals(secondDate.toString())) {
			return 0;
		} else {
			if (firstDate.after(secondDate)) {
				Date thirdParty = firstDate;
				firstDate = secondDate;
				secondDate = thirdParty;
			}
			Calendar c1 = Calendar.getInstance();
			c1.setTime(firstDate);
			Calendar c2 = Calendar.getInstance();
			c2.setTime(secondDate);
			int day_gap = 0;
			for (int daysGap = 0;; daysGap++) {
				c1.add(Calendar.DATE, daysGap);
				if ((c1.getTime().toString()).equals((c2.getTime().toString()))) {
					day_gap = daysGap;
					break;
				}
			}
			return day_gap;
		}

	}

	public int isTheSameDate() {// 判断是否是同一天,是返回0,否则返回相差的天数
		return daysNotEqual();
	}

	public int isInTheSameMonth() {// 判断两个日期是否在同一个月,是返回0,不是返回1
		Calendar c1 = Calendar.getInstance();
		Calendar c2 = Calendar.getInstance();
		c1.setTime(firstDate);
		c2.setTime(secondDate);
		return (c1.get(Calendar.YEAR) == c2.get(Calendar.YEAR) && c1
				.get(Calendar.MONTH) == c2.get(Calendar.MONTH)) ? 0 : 1;

	}

	public int isInTheSameYear() {// 判断两个日期是否在同一年,是返回0,不是返回1
		Calendar c1 = Calendar.getInstance();
		Calendar c2 = Calendar.getInstance();
		c1.setTime(firstDate);
		c2.setTime(secondDate);
		return (c1.get(Calendar.YEAR) == c2.get(Calendar.YEAR)) ? 0 : 1;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -