方法仅返回一次值(Greenfoot)

时间:2019-03-05 02:53:14

标签: java greenfoot

在我的代码中调用方法时遇到麻烦(正在调用正确的单词吗?希望如此。)它将返回正确的变量,该变量是0到10之间的数字,但是在循环中再次运行它后,它总是返回相同的数字,即使该变量应该返回更改也是如此。

我的代码:

public class Digit1 extends Digits
{    
    static int iam = 1;
    public void act() 
    {
        setImage(getDigit(iam) + ".png");
    }    
}

请注意,在Greenfoot中,act()每隔一个刻度就会运行一次(刻度是否正确?还是会循环。)

我的方法不会返回正确的数字:

public int getDigit(int heis)
{
    if (heis > digits)
        return 10;
    else
    {            
        switch(heis)
        {
            case 1:
                return m1;                
            default:
                return 10;            
        }
    }
}

还有更多的情况,但是我的问题仅涉及heis = 1。 m1是介于0到9之间的数字,随代码运行而随机变化。但是getDigit(iam)似乎只会返回代码开始运行时的状态。我在做什么错了?

编辑:所以我 kinda 撒谎说m1发生了变化。它将但尚未正确。现在,它被设置为一个数字,并且一次向下计数1。如果将其设置为5,则getDigit(iam)返回5,但稍后当m1 = 1时,getDigit(iam)仍返回5。

0 个答案:

没有答案