Java:高分法

标签 java variables

我有一个程序,想为其创建一个简单的高分方法。该方法只会判断当前的点数是否高于之前的点数。

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/

相关文章:

java - 非 Activity Java 类中的 Dagger 2 注入(inject)

java - Spring @Retryable 不工作

java - Java foreach 声明中的字段分配

java - java中的简单泛型列表

variables - 将符号解析为宏与函数参数的规则是什么?

java - 为什么我不能在方法之外进行赋值?

java - 使用 Joda-Time 有什么缺点吗?

java - 如何在 JSF 中设置变量?

linux - 检查 bash 脚本上的 AWS cli 版本

Java try catch 返回 false 变量