我有一个程序,想为其创建一个简单的高分方法。该方法只会判断当前的点数是否高于之前的点数。
public class Highscore {
public static int Highscore(int poang) {
int count = 0;
int poäng1 = 0;
int poäng2 = 0;
正如您在上面看到的,计数器设置为0;
。这是为了保存第一个条目。但是,每次使用该方法时,它都会重置为 0。我该如何重新编码?这是其余的代码:
if (count == 0) {
poäng1 = poang;
count++;
} else if (count > 0) {
if (poäng2 > poäng1) {
poäng1 = poäng2;
}
}
return poäng1;
}
}
最佳答案
每次输入 block (在您的情况下 - 静态方法)时,都会重新定义(并重新初始化)局部变量。如果您希望它们将其值保留在该 block 的范围之外,则应在该 block 之外定义它们。
在这种情况下,您可以将 count
作为(静态)成员:
private static int count = 0;
public static int Highscore(int poang) {
// Code comes here
关于Java:高分法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32666427/