• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:java 選択肢に制限時間を設ける)

javaで選択肢に制限時間を設ける方法は?

このQ&Aのポイント
  • javaで選択肢に制限時間を設けたい場合、どのような方法があるのでしょうか?
  • javaで選択肢の選択に制限時間を付ける方法を教えてください。
  • javaのプログラムで選択肢に制限時間を実装したい場合、どうすれば良いのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.3

実際にできるかどうか試していませんが、System.inをラップするような、タイムアウト付きのInputStreamを作れば可能かもしれません。

その他の回答 (2)

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

> 選択し部分はscannerからの入力で行っています. これは、CLIでInputStreamから入力を得ているのだと思われます。ANo.1の方が書いているとおり、この場合入力待ち状態を途中で打ち切ることはできないはずです。 お望みのようなプログラムを作るにはGUIプログラミングをすることになるでしょう。 > そこでreadSt.equals="No"なら処理を行うような記述をしています. 質問文にはscannerもreadStも現れないので、上記の文は回答者にはほとんど意味がありません。 どのように入力を行っているのか、該当部分のコードを見せてもらうのが一番手っ取り早いです。

namamura
質問者

お礼

回答ありがとうございます. やはりCLIでは不可能なのでしょうか.念のため,該当部分のソースコードを以下に示しておきます. System.out.println("選択肢"); Scanner scan = new Scanner(System.in); String str = scan.next(); if(str.equals("1")){ //処理 } else{ //処理 } となっています.

noname#247307
noname#247307
回答No.1

肝心の選択肢の部分がないのですが……。要するに、いくつか選択肢を表示して1つを選ぶわけですよね。それを時間によって減らしたいのですよね。 その部分はどう作っていますか。AWTやSwingなどでGUIとして実装しているなら、それらのコンポーネントを非表示にするなどして操作するだけです。 CLIでInputStreamなどからreadLineで入力を得ようとしているなら、これは入力待ちの状態を途中でキャンセルするのはできなかったように思いますが……。

namamura
質問者

お礼

回答有り難うございます. 選択し部分はscannerからの入力で行っています. そこでreadSt.equals="No"なら処理を行うような記述をしています. このような記述でも不可能でしょうか?

関連するQ&A