gpt4 book ai didi

java - 根据耗时设置条件

转载 作者:行者123 更新时间:2023-11-30 04:04:10 24 4
gpt4 key购买 nike

我正在编写这段代码,我需要根据过去的时间来执行功能。

举个随机的例子,我想测量时间(以毫秒为单位,最多 10 秒),当发生这种情况时,它会打印 hello。在此过程中,如果达到 6 秒,我希望它打印出 Goodbye 2 秒,然后继续打印 hello 2 秒,直到达到 10 秒。

我认为这将通过 if 语句和 while 循环来完成,但尚未成功完成。

我一直在使用 currentTimeMillis() 并且我更喜欢使用该选项来测量时间,但一般来说,我如何能够以这种方式执行上述操作?这个例子有点愚蠢,但我真正想做的是类似的,所以上面的就可以了。

谢谢大家。

编辑:根据要求,这是我在上面的示例中尝试过的

    long x = System.currentTimeMillis();

while(System.currentTimeMillis() - x < 10000)
{
System.out.println("hello");

if(System.currentTimeMillis() - x == 6000)
{
System.out.println("goodbye");
if(System.currentTimeMillis() - x > 8000)
{
System.out.println("hello");
}
}

}

最佳答案

只需记录一个开始时间,然后执行每个循环,直到当前时间达到该开始时间加上任何阈值。像这样的东西:

long startTime = System.currentTimeMillis();
long tenSecondsFromStart = startTime + 10*1000;
long eightSecondsFromStart = startTime + 8*1000;
long sixSecondsFromStart = startTime + 6*1000;


while(System.currentTimeMillis() < sixSecondsFromStart){
System.out.println("Hello");
}

while(System.currentTimeMillis() < eightSecondsFromStart){
System.out.println("Goodbye");
}

while(System.currentTimeMillis() < tenSecondsFromStart){
System.out.println("Hello again");
}

关于java - 根据耗时设置条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21171076/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com