Java 输入时间限制

假设我有一个代码,要求用户提供一些输入,例如:

for (condition) {

System.out.println("Please give some input");

System.in.read();

} //lets say this loop repeats 3 times and i face a problem during second iteration

但是我想给用户60秒的时间限制,然后抛出一个异常(在这种情况下,我认为是TimeOutException)。我怎么做?

回答:

import java.util.Timer;

import java.util.TimerTask;

import java.io.*;

public class test

{

private String str = "";

TimerTask task = new TimerTask()

{

public void run()

{

if( str.equals("") )

{

System.out.println( "you input nothing. exit..." );

System.exit( 0 );

}

}

};

public void getInput() throws Exception

{

Timer timer = new Timer();

timer.schedule( task, 10*1000 );

System.out.println( "Input a string within 10 seconds: " );

BufferedReader in = new BufferedReader(

new InputStreamReader( System.in ) );

str = in.readLine();

timer.cancel();

System.out.println( "you have entered: "+ str );

}

public static void main( String[] args )

{

try

{

(new test()).getInput();

}

catch( Exception e )

{

System.out.println( e );

}

System.out.println( "main exit..." );

}

}

以上是 Java 输入时间限制 的全部内容, 来源链接: utcz.com/qa/428914.html

回到顶部