当前位置: 首页 > 面试题库 >

Java 输入时间限制

艾泉
2023-03-14
问题内容

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

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..." );
    }
}


 类似资料:
  • 我正在使用Pircbot创建一个IRC bot,它可以响应某些请求(例如“!time”提供本地时间)。我正在构建的功能之一是一个giveaway系统,从当前在线的用户中随机抽取一个用户,给他们一个奖品。 我想通过强制中奖者在中奖后30分钟内键入“!接受”来领取奖品来增强系统。然而,我希望bot仍然运行,这意味着我不能冻结整个线程30分钟等待一个消息。 我想做的几种方法对我来说有点太古怪了。 > 我

  • 我正在开发一个待办事项列表程序。 我想让用户可以输入日期、时间和关于。我已经知道日期了。我错过的是时间。 但我有很多例外。我错过了什么吗?

  • 编辑问题以包括所需的行为、特定的问题或错误,以及重现问题所需的最短代码。这将帮助其他人回答这个问题。 我正在做一个待办事项列表程序。 我想让用户可以输入日期、时间和关于。我已经有日期了。我缺少的是时间。 但我有很多例外。我有什么遗漏吗?

  • 我在while循环中遇到了这个问题: 这个while循环只接受一次输入,不会再次请求它,所以它会循环整个时间接受一次该输入。我在这里做错了什么,因为对我来说,这个诡计循环真的很奇怪? InputHandler类:

  • 问题内容: 我正在尝试创建一个限制用户输入的文本字段。我有这个代码: 它成功限制了输入。但是,当我尝试按键盘上的其他字符时,它将更改文本字段上的最后一个字符。有什么想法可以阻止吗?我知道其他人会说我应该使用Document(不记得了)来制作这种东西,但是我不能。我不知道如何在netbeans中做到这一点。请帮忙。 问题答案: 这是一种简单的方法:

  • 本文向大家介绍Java输入输出流复制文件所用时间对比,包括了Java输入输出流复制文件所用时间对比的使用技巧和注意事项,需要的朋友参考一下 废话不多说,关键代码如下所述: 测试文件是