2013-03-22 67 views
-1

嗨我的时钟代码只显示即时时间,但我怎样才能让它数字,这将改变控制台的秒,分和小时。在控制台窗口上的数字时钟

我需要的程序只是用于控制台...而不是用Applet。

我的代码是在这里:

import java.text.DateFormat; 
import java.text.SimpleDateFormat; 
import java.util.Calendar; 
import java.util.Date; 

public class DateFormatExample { 
    public static void main(String[] args) { 
     Date date = Calendar.getInstance().getTime(); 

     DateFormat formatter = new SimpleDateFormat("EEEE, dd MMMM yyyy, hh:mm:ss.SSS a"); 
     String today = formatter.format(date);  
     System.out.println("Today : " + today); 
    } 
} 
+1

使用计时器,如'的java .util.Timer'对象与'TimerTask'对象。 API和教程应该帮助你做到这一点。 [这是一个](http://enos.itcollege.ee/~jpoial/docs/tutorial/essential/threads/timer.html)。 – 2013-03-22 20:41:08

+0

你可以转换我的数字时钟代码吗? – Sojib 2013-03-22 20:46:57

+1

''你可以将我的代码转换为数字时钟吗?“ - 不,请不要要求我们为您编写代码。请检查链接,并尝试自己做。我们不是来为你做作业或作业的。 – 2013-03-22 20:47:18

回答

0

你可以尝试这样的:

import java.text.DateFormat; 
import java.text.SimpleDateFormat; 
import java.util.Calendar; 
import java.util.Date; 

public class DateFormatExample { 
    public static void main(String[] args) { 
     Thread th = new Thread(new Runnable() 
     { 
      public void run() 
      { 
       while(true) 
       { 
        Date date = Calendar.getInstance().getTime(); 
        DateFormat formatter = new SimpleDateFormat("EEEE, dd MMMM yyyy, hh:mm:ss.SSS a"); 
        String today = formatter.format(date);  
        System.out.print("Today : " + today+"\r"); 
        try{ 
        Thread.sleep(100);}catch(Exception ex){} 
       } 
      } 
     }); 
     th.start(); 
    } 
} 
0

你可以尝试这样的事情:

new Thread(new Runnable() { 

     @Override 
     public void run() { 

      while (true){ 

       Calendar cal = new GregorianCalendar(); 
       int hour = cal.get(Calendar.HOUR); 
       int minute = cal.get(Calendar.MINUTE); 
       int seconds = cal.get(Calendar.SECOND); 
       String realTime = Integer.toString(hour) + " : " + Integer.toString(minute) + " : " + Integer.toString(seconds); 

       System.out.println(realTime); 

       try { 

        Thread.sleep(1000); 
       } catch (Exception ex) { 
        ex.getStackTrace; 
       } 
      } 
     } 
    }).start();