Java 我想在另一个类中使用我的计数器,但它显示为其初始值零
我试图创建一个程序,在5分钟内产生一个随机的节拍数,然后在5分钟后在屏幕上显示最终的节拍数。下面是我的两个类,它们与我当前的问题有关。我尝试了很多东西,但最终的节拍数仍然显示为零。我对Java非常陌生,所以我希望尽可能多地了解具体情况。提前谢谢 另外,我还想让用户在计时器结束后在屏幕上输入他们的猜测。有人能给我指出正确的方向吗?我在网上找不到任何关于我将如何去做的东西。我不想要一个对话框(除非我能改变它的外观?) 这是我的计时器类,我从中获取计数。定时器设置为10秒Java 我想在另一个类中使用我的计数器,但它显示为其初始值零,java,timer,count,counter,Java,Timer,Count,Counter,我试图创建一个程序,在5分钟内产生一个随机的节拍数,然后在5分钟后在屏幕上显示最终的节拍数。下面是我的两个类,它们与我当前的问题有关。我尝试了很多东西,但最终的节拍数仍然显示为零。我对Java非常陌生,所以我希望尽可能多地了解具体情况。提前谢谢 另外,我还想让用户在计时器结束后在屏幕上输入他们的猜测。有人能给我指出正确的方向吗?我在网上找不到任何关于我将如何去做的东西。我不想要一个对话框(除非我能改变它的外观?) 这是我的计时器类,我从中获取计数。定时器设置为10秒 package com.ho
package com.home.timer;
import java.util.Timer;
import java.util.TimerTask;
public class MyTimer extends TimerTask
{
Timer timer;
int count = 0;
public MyTimer(){
}
public MyTimer (Timer timer)
{
this.timer = timer;
}
public void toDo()
{
System.out.println (" Count: " + (count++));
}
long start = System.currentTimeMillis();
long end = start + 10*1000;
@Override
public void run()
{
toDo();
if (System.currentTimeMillis() > end)//this is condition when you want to stop task
{
timer.cancel();
}
}
}
您有两个
MyTimer
类的实例。一个是静态的-t
,另一个不是-myTask
。计时器实际使用的实例是myTask
,但您使用另一个实例打印count-g.drawString(t.count+“beats”,200200)代码>。因此,打印的计数为0
也就不足为奇了
尝试g.drawString(myTask.count+beats),200200代码>
package com.home.timer;
import java.util.Timer;
import java.util.TimerTask;
public class MyTimer extends TimerTask
{
Timer timer;
int count = 0;
public MyTimer(){
}
public MyTimer (Timer timer)
{
this.timer = timer;
}
public void toDo()
{
System.out.println (" Count: " + (count++));
}
long start = System.currentTimeMillis();
long end = start + 10*1000;
@Override
public void run()
{
toDo();
if (System.currentTimeMillis() > end)//this is condition when you want to stop task
{
timer.cancel();
}
}
}