java – 输入的时间限制
发布时间:2020-12-15 00:49:01 所属栏目: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秒的时
假设我有一个代码,它要求用户提供一些输入,如下所示:
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..." ); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |