在该程序中,分别使用 Date 类的无参数构造方法创建了两个 Date 对象。
在创建完第一个 Date 对象后,使用 Thread.sleep() 方法让程序休眠 60 秒,然后再创建第二个 Date 对象.
这样第二个 Date 对象所表示的时间将会在第一个 Date 对象所表示时间之后.
因此“date2.before(date1)”条件表达式不成立,从而执行 else 块中的代码.
表示事情已经发生过。
运行该程序,执行结果如下所示。
import java.util.Date; import java.util.Scanner; public class Test11 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入要做的事情:"); String title = input.next(); Date date1 = new Date(); // 获取当前日期 System.out.println("[" + title + "] 这件事发生时间为:" + date1); try { Thread.sleep(60000);// 暂停 1 分钟 } catch (InterruptedException e) { e.printStackTrace(); } Date date2 = new Date(); System.out.println("现在时间为:" + date2); if (date2.before(date1)) { System.out.println("你还有 " + (date2.getTime() - date1.getTime()) / 1000 + " 秒需要去完成【" + title + "】这件事!"); } else { System.out.println("【" + title + "】事情已经过去了 " + (date2.getTime() - date1.getTime()) / 1000 + " 秒"); } } }
请输入要做的事情:
收快递
【收快递】这件事发生时间为:Fri Oct 12 11:11:07 CST 2018
现在时间为:Fri Oct 12 11:12:07 CST 2018
【收快递】事情已经过去了 60 秒
下面使用 Calendar 类来实现日历的打印功能,代码实现如下:
import java.util.Calendar; public class CalendarDemo { public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); calendar.set(2016, 5, 1); // 实际的calendar对象所表示的日期为2016年6月1日 // 判断2016年6月1日为一周中的第几天 int index = calendar.get(Calendar.DAY_OF_WEEK) - 1; char[] title = { '日', '一', '二', '三', '四', '五', '六' }; // 存放曰历的头部 int daysArray[][] = new int[6][7];// 存放日历的数据 int daysInMonth = 31; // 该月的天数 int day = 1; // 自动增长 for (int i = index; i < 7; i++) { // 填充第一周的日期数据,即日历中的第一行 daysArray[0][i] = day++; } for (int i = 1; i < 6; i++) { // 填充其他周的日历数据,控制行 for (int j = 0; j < 7; j++) { // 如果当前day表示的是本月最后一天,则停止向数组中继续赋值 if (day > daysInMonth) { i = 6; break; } daysArray[i][j] = day++; } } System.out.println("------------------2016 年 6 月--------------------n"); for (int i = 0; i < title.length; i++) { System.out.print(title[i] + "t"); } System.out.print("n"); // 输出二元数组daysArray中的元素 for (int i = 0; i < 6; i++) { for (int j = 0; j < 7; j++) { if (daysArray[i][j] == 0) { if (i != 0) { // 如果到月末,则完成显示日历的任务,停止该方法的执行 return; } System.out.print("t"); continue; } System.out.print(daysArray[i][j] + "t"); } System.out.print("n"); } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)