我想不通的基本 java 任务

A basic java task that I just cant figure out

我只是不知道如何创建高分函数。我知道我必须有 2 个值并将它们与 if 语句进行比较并将它们保存在 SharedPreferences 中。共享偏好我明白了。我无法理解的是如何比较这 2 个值?

在我的程序中,我有一个名为 score 的整数。每次我正确回答问题并在最后显示已回答的问题编号时,它都会像 score++ 一样增加。假设我又玩了一次,现在得到了一个更大的数字。如果他们的同名分数如何比较他们?我需要将分数分配给一些新变量吗?如何?我现在觉得很蠢很郁闷..

代码: 我的分数存储在这里:

public static int scores = 0;

这就是我每次加 1 的方式:

   if (type.get(count[0])) {    
scores++; // Add +1 to the score; ...

我在这里保存我的分数:

  protected void score() {
        super.onDestroy();
        SharedPreferences prefs = getSharedPreferences("level1", Context.MODE_PRIVATE);
        SharedPreferences.Editor prefsEditor = prefs.edit();
         if(scores > highscore) {

        highscore = scores;


        prefsEditor.clear();
        prefsEditor.putInt("score", scores);
        prefsEditor.commit();
    }

然后像这样在其他 activity 中显示:

SharedPreferences prefs = getSharedPreferences("level1", Context.MODE_PRIVATE);

            int userScore = prefs.getInt("score", 0);

        mResult.setText("" + userScore);

只需在每次获得高分时将分数保存在 SharedPreferences 中,然后在启动应用程序时显示该分数:

// when starting the app
public static int userScore = 0;
SharedPreferences prefs = getSharedPreferences("level1", Context.MODE_PRIVATE); 
userScore = prefs.getInt("score", 0);
mResult.setText("" + userScore);

public static int scores = 0;
   if (type.get(count[0])) {    
       scores++; 
    }
   if(scores > userScore)
   {
        SharedPreferences.Editor prefsEditor = prefs.edit();
        prefsEditor.putInt("score", scores);
        prefsEditor.commit();
   }

进行简单的检查(如果您只查找最高分,而不查找其他分数)。做一个 IF 语句。

我不知道你怎么称呼你的高分,但类似于:

if (score > highscore){

highscore = score;

}

应该很简单吧?然后将其保存在配置中并让它每次弹出...