gpt4 book ai didi

Android 应用程序上的 Java 计时器

转载 作者:行者123 更新时间:2023-11-30 02:58:48 25 4
gpt4 key购买 nike

我的 android 应用程序在 java 中需要一些帮助。

我有一个计时器,用于检查当前分数是否优于保存的最佳分数并相应地保存

代码如下:

    if(sec< bestSec){
Main.settings= Main.context.getSharedPreferences(GameConstants.PREFS_NAME, Main.MODE_WORLD_WRITEABLE);
Main.editor= Main.settings.edit();
if(mSec<10){
Main.editor.putString("best", sec+"."+"0"+mSec);
}else{
Main.editor.putString("best", sec+"."+mSec);
}
Main.editor.putInt("bestSec", sec);
Main.editor.putInt("bestMSec", mSec);
Main.editor.commit();
}else if(sec== bestSec){
if(mSec< bestMSec){
Main.settings= Main.context.getSharedPreferences(GameConstants.PREFS_NAME, Main.MODE_WORLD_WRITEABLE);
Main.editor= Main.settings.edit();
if(mSec<10){
Main.editor.putString("best", sec+"."+"0"+mSec);
}else{
Main.editor.putString("best", sec+"."+mSec);
}
Main.editor.putInt("bestSec", sec);
Main.editor.putInt("bestMSec", mSec);
}
}

我的最好成绩是:例如 12.89 秒。如果我执行 11,20 或 11,92,它会保存得很好,但如果我执行 12,45 秒,它就不会保存。

感谢您的帮助!

最佳答案

您应该使用 double 或浮点值来正确比较它们。如果将十进制值转换为 int,则 12,89 和 12,45 将等于 12。数字的小数部分将被忽略。

使用 double 或 float 进行有效比较,并使用 editor.putFloat() 保存值。

关于Android 应用程序上的 Java 计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22885891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com