java-小程序

java-小程序,第1张

java-小程序

在该程序中,分别使用 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");
        }
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5718121.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存