【Java】比对两个以字符串形式表示的时期是否相差超过1天

数据库存放的日期,即使是以字符串表示的,你也可以利用《【Mysql】求出离最近相差X天的项,sql语句关于日期的比对》(点击打开链接)中所介绍的那个timestampdiff函数比对,日期是否相差超过一天。

如果在Java中要比对两个以字符串形式表示的日期是否相等,

比如比对两个以"yyyy-MM-dd HH:mm:ss"与字符串String形式表示的日期,是否相等

那可以先去除"-"、":"、" "空格,等东西,截取前8个字符串,也就是"yyyy-MM-dd"部分,之后得到一个8位的long整形,两个日期相减就可以了。

以下的程序判断了"2019-09-06 16:04:07"与当前日期"2015-5-7"是否是同一天。

package timeDiffTest;
import java.text.SimpleDateFormat;
import java.util.Date;

class Util {
	public static boolean stringTimeDayDiff(String stringTime1, String stringTime2) {
		Long dateTime1 = Long.parseLong(stringTime1.replaceAll("-", "")
				.replaceAll(":", "").replace(" ", "").substring(0, 8));
		Long dateTime2 = Long.parseLong(stringTime2.replaceAll("-", "")
				.replaceAll(":", "").replace(" ", "").substring(0, 8));
		return (dateTime1 == dateTime2) ? true : false;
	}
}

public class timeDiff {
	public static void main(String[] args) {
		String dbTime = "2019-09-06 16:04:07";
		String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
				.format(new Date(System.currentTimeMillis()));
		System.out.println(Util.stringTimeDayDiff(dbTime,nowTime));
	}
}
运行结果如下:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 如果你想比较两个字符串是否相同,可以使用 "==" 运算符。例如: ``` string1 = "hello" string2 = "hello" if string1 == string2: print("The strings are equal.") else: print("The strings are not equal.") ``` 如果你正在使用 Python 编程,这是一种可行的方法。 ### 回答2: 比对两个字符串是否相同的方法主要有以下几种: 1. 使用比较运算符(==)进行比对:直接使用"=="运算符将两个字符串进行比较,如果返回结果为真,则表示两个字符串相同;否则,表示两个字符串不同。例如,使用Python代码进行比对:str1 == str2。 2. 使用equals()方法进行比对:对于一些编程语言,如Java,可以使用equals()方法来比较两个字符串是否相同。例如,使用Java代码进行比对:str1.equals(str2)。 3. 使用字符串比较函数进行比对:一些编程语言提供了字符串比较函数,例如strcmp()函数,可以直接将两个字符串作为参数进行比对,函数返回值为0则表示两个字符串相同,否则不同。例如,在C语言中使用strcmp()函数进行比对:strcmp(str1, str2) == 0。 4. 转化为字符数组进行比对:将字符串转化为字符数组,并逐个比对字符是否相等,直到比对完成或者找到不同的字符。例如,使用Java代码进行比对: ```java char[] array1 = str1.toCharArray(); char[] array2 = str2.toCharArray(); boolean same = true; if(array1.length != array2.length){ // 长度不同,字符串肯定不同 same = false; } else { for(int i=0; i<array1.length; i++){ if(array1[i] != array2[i]){ same = false; break; } } } ``` 综上所述,我们可以通过比较运算符、equals()方法、字符串比较函数或者转化为字符数组等多种方法来比对两个字符串是否相同。具体使用哪种方法可以根据编程语言和需求特点进行选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值