java - 计算在论坛中回复答案所需的时间

标签 java

嗨,我在我的大学有一个小组项目。我和我的小组成员需要创建一个网站。 我们已经做到了,今年我们学习 Java 编程语言。我的讲师给我们布置了另一项任务,即使用 Java,特别是使用 JSP(JavaServer Pages)将我们的网站从静态升级为动态。

我负责为我们的网站创建一份统计报告来完成这项新任务。到目前为止,我能够从互联网尤其是这个论坛找到如何计算平均值、总和和中位数。但是我无法找到如何计算管理员基于字符串ArrayList回答用户问题所需的时间。

有人可以帮我解决这个问题吗?我对这个 Java 非常陌生,任何帮助将不胜感激。

我对我的语法感到抱歉,英语不是我的主要语言。提前致谢!

最佳答案

使用线程来计时:

public class KeepingTime
{
    private volatile int timeTaken;
    private Thread timekeeper;

    public KeepingTime()
    {
        timekeeper = new Thread(new Runnable(){
            public void run()
            {
                try
                {
                    while(true)
                    {
                        Thread.sleep(1000);
                        timeTaken++;
                        if(Thread.interrupted())
                            return;
                    }
                }
                catch(InterruptedException e)
                {
                    return;
                }
            }    //end run
        }); //end thread
        timekeeper.start();
    }    //end constructor

    public void stop()
    {
        timekeeper.interrupt();
    }

    public int timeTaken()
    {
        return timeTaken;
    }
}

然后像这样使用它:

for(String question : questions)
{
    KeepingTime timer = new KeepingTime();
    //ask the question
    //wait until it is answered
    timer.stop();
    int timeTaken = timer.timeTaken();
}

请注意,我没有使用 Thread.stop(),因为它已被弃用。如果您运行大量线程,这可能会不一致。

关于java - 计算在论坛中回复答案所需的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15483445/

相关文章:

java - 如何使用 Spring Kafka 清除测试中的主题

java - 如何防止页面刷新? AJAX、Spring MVC

java - 如何通过 Java 使用 Bitpay

java - RequestMapping 无法正常工作

java - 如何使Java ServiceActivator在JUnit Test中可见?

java - 是否有更友好的 BeanCreationException/ApplicationContext 加载问题 View

java - 抽象方法没有主体?

java - 如何在二叉搜索树中实现重新平衡?

Java jbdc 出现错误 No 适用于 jdbc 的驱动程序 :mysql://ortal-pc\SQLEXPRESS

java - 在 android 4.2 中使用 SOAP Web 服务