ある処理を5秒おきに、n回だけ実行したいのですが、「n回」をどのように実現したらよいのかわかりません。Timerクラスのメソッドにはないようなのですが。。簡単なサンプルコードを書いてみましたので以下を元に修正方法を教えて頂けると助かります。
import java.util.Timer;
import java.util.TimerTask;
public class TimerTest {
public static void main(String[] args) {
int n=10;
Timer timer = new Timer();
timer.schedule(new sendTask(), 5000, 5000);
}
}
class sendTask extends TimerTask {
public void run() {
System.out.println("Hello World");
}
}
No.2ベストアンサー
- 回答日時:
回数制限のある TimerTask を作ればいいと思います。
試してませんが、例えばこんな感じ。
import java.util.*;
public final class Main {
public static void main(String[] args) {
Timer timer = new Timer();
timer.schedule(new LimitTimerTask(timer, 10), 5000, 5000);
}
}
final class LimitTimerTask extends TimerTask {
private final Timer timer;
private final int procNum;
private int count = 0;
LimitTimerTask(Timer timer, int procNum) {
this.timer = timer;
this.procNum = procNum;
}
public void run() {
System.out.println("Hello, world!");
synchronized (this) {
if (++count == procNum) {
this.cancel();
timer.cancel();
}
}
}
}
No.1
- 回答日時:
用途的にTimerを使う必要性を感じないんですが、Timerじゃなきゃダメなんですか?
public static void main(String[] args) {
for ( int i = 0 ; i < 5 ; i ++){
System.out.println("count:" + i);
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
catch block
e.printStackTrace();
}
}
}
これじゃだめ?
Thread.sleep()というのがあるのですね。タイマーというキーワードで調べたので、Timerで質問してしまいましたが、こちらのほうがシンプルに出来ますね。。勉強になりました。有り難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Java java final 1 2022/06/10 22:49
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
- Java eclipse実行ができない 2 2022/07/27 04:47
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- Java Java 配列<選挙> 4 2023/07/31 15:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
変数を動的に利用するには?
-
中カッコ{}だけの記述について
-
Socketの接続のタイムアウトを...
-
GetterとSetterをやったのに。
-
System.exit()の値を取得したい
-
インタフェイス実装と抽象クラ...
-
プログラミングの問題です。大...
-
Javaでlog4jを使ってログ出力を...
-
リフレクション Method.invoke(...
-
URIからURIへの相対URIの求め方
-
javaのudp通信について
-
C言語のポインターに関する警告
-
ループ処理の際、最後だけ","を...
-
[JAVA]try 内の変数を外で!?
-
JSPやサーブレットでSystem.out...
-
VBAで配列の計算
-
javaで質問です。 文字列2023/2...
-
ダブルクォーテーションのrepla...
-
Path型をString型へ変換する(Java)
-
System.err. printlnとSystem.o...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
変数を動的に利用するには?
-
プログラミングの問題です。大...
-
中カッコ{}だけの記述について
-
Javaでlog4jを使ってログ出力を...
-
NoSuchMethodErrorが解決できま...
-
Socketの接続のタイムアウトを...
-
コンストラクタの引数の中のnew?
-
javaのプログラミングで作るRPG...
-
System.exit()の値を取得したい
-
JSP/Servletのパラメータの受け...
-
Processing :指定フォルダ内の...
-
javaで特定の文字列から特定の...
-
インタフェイス実装と抽象クラ...
-
Javaで日本語の出力が文字化けする
-
randomで
-
StringクラスのcompareToメソッド
-
【初心者です】javaで平均値を...
-
DESを使用した暗号化/復号化処...
-
初心者なので教えてほしいです。
-
ArrayList でスタックを
おすすめ情報