2016-04-23 1 views
0

この質問は奇妙に聞こえるかもしれませんが、どういうわけか私はプログラムの実行に数秒の休憩を取ることができるかどうかを知りたいと思っています。配列のelemntsを印刷するための単純なfor()は、要素はすべてdirectclyで印刷されます。最初の要素のように印刷することができたら、2秒間の印刷を中断した後、これは可能なのでしょうか?プログラムの実行に数秒の休憩を持たせる方法

+1

あなたがチェックアウトする必要があります http://stackoverflow.com/questions/3342651/how-can-i-delay-a-java-program-for-a-few-seconds –

+0

Thread.sleep(2000); ? https://docs.oracle.com/javase/tutorial/essential/concurrency/sleep.html – Devrim

+1

Thread.currentThread()。sleep()を使用できますが、これは正確に2秒間スリープするとは限りません。より多くの可能性があります。または、現在の時刻から最後の値が出力された時刻を減算し、その差が2秒であるかどうかを確認してから次の値を表示するwhileループを使用できます。これはbusy busyですが、sleep()の他のオプションは、あなたのプロセッサーが自由に他のタスクを実行できるようにします。 – Madhusudhan

答えて

1

Thread.sleep()を追加するだけです。

for (...) { 
    //print the element 
    try { 
     Thread.sleep(2000); 
    } catch (InterruptedException e) { 
     //do things with exception 
    } 
} 
0

あなたは、forループでThread.sleep(1000)方法を使用することができます。

public class JavaApp{ 

    public static void main(String[] args) { 
     for (int i = 0; i < 10; i++) { 
      System.out.println(i); 
      try { 
       Thread.sleep(1000); 
      } catch (Exception e) { 

      } 
     } 
    } 
} 

それは、0から9まで毎秒数を出力します。

run: 
0 
1 
2 
3 
4 
5 
6 
7 
8 
9 
**BUILD SUCCESSFUL (total time: 10 seconds)** 
0

この機能を使用すると、スリープできます。私はこのお試しくださいThread.sleep()

を使用することをお勧めします

Thread.sleep(4000); // 4000 = 4 second 
0

:このように

try { 
    Thread.sleep(1000); 
} catch(InterruptedException ex) { 
    Thread.currentThread().interrupt(); 
} 

を、プログラムが1000ミリ秒のために一時停止します。

+0

その例外が発生したときは? – EbraHim

+0

@EbraHim:この例外は、スレッドが待機中、スリープ中、またはその他の方法で占有されていて、アクティビティの前または途中でスレッドが中断した場合にスローされます。 –

0

Thread.currentThread.sleep(time in ms);

+1

コードのいくつかの説明を追加するか、少なくともプログラミングリファレンスまたはガイドへのリンクを追加してください。 –

関連する問題