1 Star 0 Fork 118

关小妍/0203

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
DateComparison.java 2.78 KB
一键复制 编辑 原始数据 按行查看 历史
关小妍 提交于 2021-06-10 18:33 +08:00 . 第三次提交
package jisuanji;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;
public class DateComparison extends JFrame implements ActionListener{
int []a=new int[3];
int []b=new int[3];
JTextField field1=new JTextField(10);
JTextField field2=new JTextField(10);
JButton button=new JButton("开始比较");
JPanel panel1=new JPanel();
JPanel panel2=new JPanel();
JLabel label1=new JLabel();
JLabel label2=new JLabel();
JLabel label3=new JLabel();
DateComparison(){
init();
setTitle("DateComparison");
setBounds(600, 360, 480, 220);
setVisible(true);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}
public void init(){
setLayout(new BorderLayout());
panel1.setLayout(new FlowLayout());
panel2.setLayout(new FlowLayout());
label1.setText("and");
label2.setText(null);
label3.setText("请在文本框输入需要比较的日期,格式:2021.6.11");
label1.setFont(new Font("宋体", Font.PLAIN, 20));
label2.setFont(new Font("宋体", Font.PLAIN, 20));
label3.setFont(new Font("宋体", Font.PLAIN, 18));
button.addActionListener(this);
panel1.add(field1);
panel1.add(label1);
panel1.add(field2);
panel1.add(button);
panel2.add(label2);
add(label3,BorderLayout.NORTH);
add(panel1,BorderLayout.CENTER);
add(panel2,BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==button){
a=getDate(field1.getText());
b=getDate(field2.getText());
String x=work(a,b);
label2.setText(x);
}
}
public int[] getDate(String str){
int []c=new int[3];
Scanner scanner=new Scanner(str);
scanner.useDelimiter("[.]+");
int k=0;
while(scanner.hasNext()){
c[k++]=scanner.nextInt();
}
return c;
}
public String work(int []a,int []b){
String re = null;
String rx;
int yearOne=a[0];
int monthOne=a[1];
int dayOne=a[2];
int yearTwo=b[0];
int monthTwo=b[1];
int dayTwo=b[2];
Calendar calendar=Calendar.getInstance();
calendar.set(yearOne, monthOne-1, dayOne);
long time1=calendar.getTimeInMillis();
calendar.set(yearTwo, monthTwo-1, dayTwo);
long time2=calendar.getTimeInMillis();
Date date1=new Date(time1);
Date date2=new Date(time2);
if(date2.equals(date1)){
re="两个日期相同,";
}
else if(date2.after(date1)){
re="您输入的第二个日期大于第一个日期,";
}
else if(date2.before(date1)){
re="您输入的第二个日期小于第一个日期,";
}
long day=Math.abs(time1-time2)/(1000*60*60*24);
rx= re+"相差"+String.valueOf(day)+"天";
return rx;
}
}
//
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/guan-xiaoyan/java2021spring.git
[email protected]:guan-xiaoyan/java2021spring.git
guan-xiaoyan
java2021spring
0203
master

搜索帮助