第一次写博客,哈哈,不知道怎么开头头。来吧,上内容吧
/**
* 获取当前时间距离传入时间的间隔
* 返回时间间隔
* @return返回字符串格式 yyyy-MM-dd HH:mm:ss
*/
public static String getStringTadayNumber(String StrDate) {
int num=0;
// String StrDate="2022-09-18";
String StrDateY=StrDate.split("-")[0];//指定年
String StrDateM=StrDate.split("-")[1];//指定月
String StrDateD=StrDate.split("-")[2];//指定日
Date currentTime = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
String dateString = formatter.format(currentTime);
String NowDateY=dateString.split("-")[0];//现在年
String NowDateM=dateString.split("-")[1];//现在月
String NowDateD=dateString.split("-")[2];//现在日
//判断年是否相同
if(NowDateY.equals(StrDateY)) {
//判断月是否相同
if(NowDateM.equals(StrDateM)) {
//判断天是否相同
if(NowDateD.equals(StrDateD)) {
num=0;
}else{
if(Integer.parseInt(NowDateD)>Integer.parseInt(StrDateD)) {
num=Integer.parseInt(NowDateD)-Integer.parseInt(StrDateD);
}else{
num=Integer.parseInt(StrDateD)-Integer.parseInt(NowDateD);
}
}
}else {
int x=Integer.parseInt(NowDateM);
int y=Integer.parseInt(StrDateM);
if(x>y) {
while(y<=x) {
num=num+getIntTadaysNum(StrDateY,y);
y++;
}
num=num-Integer.parseInt(StrDateD)-(getIntTadaysNum(NowDateY,x)-Integer.parseInt(NowDateD));
}else {
while(x<=y) {
num=num+getIntTadaysNum(NowDateY,x);
x++;
}
num=num-Integer.parseInt(NowDateD)-(getIntTadaysNum(StrDateY,y)-Integer.parseInt(StrDateD));
}
}
}else {
int a=Integer.parseInt(NowDateY);
int b=Integer.parseInt(StrDateY);
int x=Integer.parseInt(NowDateM);
int y=Integer.parseInt(StrDateM);
int c=Integer.parseInt(NowDateD);
int d=Integer.parseInt(StrDateD);
if(a>b) {
while(b<=a) {
num=num+getIntYearNum(b);
b++;
}
int m=0,n=1;
while(n<y) {
m=m+getIntTadaysNum(StrDateM,n);
n++;
}
m=m+d;
int p=0,q=1;
while(q<x) {
p=p+getIntTadaysNum(NowDateM,q);
q++;
}
p=p+c;
num=num-m-(getIntYearNum(a)-p);
}else {
while(a<=b) {
num=num+getIntYearNum(a);
a++;
}
int m=0,n=1;
while(n<x) {
m=m+getIntTadaysNum(NowDateM,n);
n++;
}
m=m+d;
int p=0,q=1;
while(q<y) {
p=p+getIntTadaysNum(StrDateM,q);
q++;
}
p=p+c;
num=num-m-(getIntYearNum(a)-p);
}
}
return num+"";
}
public static int getIntTadaysNum(String DateY,int DateM) {
if(DateM==1 || DateM==3 || DateM==5 || DateM==7 || DateM==8 || DateM==10 || DateM==12) {
return 31;
}else if(DateM==4 || DateM==6 || DateM==9 || DateM==11){
return 30;
}else {
int y=Integer.parseInt(DateY);
if(y%4==0 && y%100!=0 || y%400==0) {
return 29;
}else {
return 28;
}
}
}
public static int getIntYearNum(int DateY) {
int y=DateY;
if(y%4==0 && y%100!=0 || y%400==0) {
return 366;
}else {
return 365;
}
}
好了,就是这样,里面有方法套用,希望可以帮到需要的盆友们