请问"kk:mm:ss"这个格式定义的正确吗小写的k应该是可以的;

解决方案 »

  1.   

    Date date = sdf.parse("13:21:30");      //时间还没到,输出语句就先输出了,请问是我哪里写错了
      

  2.   

    schedule(TimerTask task, long delay):可以理解为在等待delay毫秒后执行task;这是两个参数的;其实还有三个参数的;
    例如:
    public static void main(String[] args) throws ParseException
    {
    Timer time = new Timer();
    SimpleDateFormat sdf = new SimpleDateFormat("kk:mm:ss"); // 请问"kk:mm:ss"这个格式定义的正确吗
    Date date = sdf.parse("19:21:30"); // 时间还没到,输出语句就先输出了,请问是我哪里写错了
    time.schedule(new TimerTask()
    {
    public void run()
    {
    System.out.println("关机中");
    }
    }, 10*1000); }
    这是等待10秒后执行;
    你可以生成一个变量,保存13:21:30这个时间和当前时间的差值;
    然后将10*1000换成这个变量;
    记得是毫秒;
      

  3.   

    java.util包里Timer有schedule(TimerTask task, Date time)方法和schedule(TimerTask task, long delay)方法,你说的是第二个,但我想使用第一个(其实我是想编一个定时关机Swing程序,第一个schedule(TimerTask task, Date time)方法比较方便)。SimpleDateFormat sdf = new SimpleDateFormat();   
       Date date = sdf.parse("2014-04-14 上午20:21");      
    这是我之前编写的,能在指定时间实现关机。
    但换成现在的语句却不行了(而是直接关机)
      

  4.   

    抱歉写错了
    是 Date date = sdf.parse("2014-04-14 上午08:21");      
      

  5.   

    貌似是你的格式有点问题;run中是执行关机的命令吧?
    class TimerDemo
    {
    public static void main(String[] args) throws ParseException
    {
    Timer time = new Timer();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy:MM:dd kk:mm"); // 请问"kk:mm:ss"这个格式定义的正确吗
    Date date = sdf.parse("2014:04:14 21:06");
    time.schedule(new TimerTask()
    {
    public void run()
    {
    System.out.println("关机中");
    }
    }, date); }
    }
    这个试试,我刚刚试了试,可以在指定时间执行run方法;
      

  6.   

    schedule安排在指定的时间执行指定的任务。如果此时间已过去,则安排立即执行该任务。
    SimpleDateFormat("kk:mm:ss")不指定年月日的话默认是1970年1月1日
    so...