Java 在Android中存储整数
所以我有三节课。我尝试了一下,最后在values下创建了Integers.xml文件,以尝试保存我的值。它是有效的,但我不知道如何改变它。我知道如何用电脑抓取它 res.getInteger(R.integer.int)强>Java 在Android中存储整数,java,android,integer,Java,Android,Integer,所以我有三节课。我尝试了一下,最后在values下创建了Integers.xml文件,以尝试保存我的值。它是有效的,但我不知道如何改变它。我知道如何用电脑抓取它 res.getInteger(R.integer.int) 我只是不知道如何改变它,我开始得出结论,你不能。我想知道我需要在哪里存储值,这样当我在其他类之间切换时,整数不会全部重置。我很抱歉,因为Android中存储了大量数据,但我无法实现他们告诉我的代码。如果有一个简单的方法确保它只记住5个整数,我就可以完成我的应用程序。存储在Int
我只是不知道如何改变它,我开始得出结论,你不能。我想知道我需要在哪里存储值,这样当我在其他类之间切换时,整数不会全部重置。我很抱歉,因为Android中存储了大量数据,但我无法实现他们告诉我的代码。如果有一个简单的方法确保它只记住5个整数,我就可以完成我的应用程序。存储在Integers.xml中的值是常量,因此它们不能更改。存储5个整数的一种快速方法是使用
SharedReferences
并使用其自己的唯一键存储每个整数。
例如,在活动中:
SharedPreference prefs = getSharedPreferences("com.example.myapp", MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putInt("Integer1", 234);
editor.putInt("Integer2", 748);
editor.putInt("Integer3", 747);
editor.putInt("Integer4", 42);
editor.putInt("Integer5", 463);
要恢复这些值,请执行以下操作:
SharedPreference prefs = getSharedPreferences("com.example.myapp", MODE_PRIVATE);
int integer1 = prefs.getInt("Integer1", 0);
int integer2 = prefs.getInt("Integer2", 0);
int integer3 = prefs.getInt("Integer3", 0);
int integer4 = prefs.getInt("Integer4", 0);
int integer5 = prefs.getInt("Integer5", 0);
integers.xml中存储的值是常量,因此不能更改。存储5个整数的一种快速方法是使用
SharedReferences
并使用其自己的唯一键存储每个整数。
例如,在活动中:
SharedPreference prefs = getSharedPreferences("com.example.myapp", MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putInt("Integer1", 234);
editor.putInt("Integer2", 748);
editor.putInt("Integer3", 747);
editor.putInt("Integer4", 42);
editor.putInt("Integer5", 463);
要恢复这些值,请执行以下操作:
SharedPreference prefs = getSharedPreferences("com.example.myapp", MODE_PRIVATE);
int integer1 = prefs.getInt("Integer1", 0);
int integer2 = prefs.getInt("Integer2", 0);
int integer3 = prefs.getInt("Integer3", 0);
int integer4 = prefs.getInt("Integer4", 0);
int integer5 = prefs.getInt("Integer5", 0);
下面是读写SharedPrefs的基本代码。请注意,此方法将数据本地保存在用户设备上: 写:
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score), newHighScore);
editor.commit();
阅读:
来源:以下是读写SharedPrefs的基本代码。请注意,此方法将数据本地保存在用户设备上: 写:
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score), newHighScore);
editor.commit();
阅读:
来源:如果你不想在关闭应用程序后存储这些整数,你不能将它们放入一个静态列表,如
public static List<Integer> integerList = new ArrayList<>();
public static List integerList=new ArrayList();
如果要永久存储这些整数,可以使用
或者你可以使用SQLite数据库,比如,如果你不想在关闭应用程序后存储这些整数,你就不能将它们放入静态列表中,比如
public static List<Integer> integerList = new ArrayList<>();
public static List integerList=new ArrayList();
如果要永久存储这些整数,可以使用
或者您可以使用SQLite数据库,如您是对的,您不能编辑
资源
文件,因为它们只运行一次。如果您想存储应用程序关闭后将保留在应用程序中的值,可以使用
SharedReferences
如果要在运行时存储值,可以使用
getter
和setters
创建一个类:
public class Values {
int value1;
int value2;
public int getValue2() {
return value2;
}
public void setValue2(int value2) {
this.value2 = value2;
}
public int getValue1() {
return value1;
}
public void setValue1(int value1) {
this.value1 = value1;
}
}
在任何活动中,您都可以设置并获得如下值:
Values.setValue1(yourValue1);
Values.getValue1();
您是对的,您无法编辑
资源
文件,因为它们只运行一次。如果您想存储应用程序关闭后将保留在应用程序中的值,可以使用
SharedReferences
如果要在运行时存储值,可以使用
getter
和setters
创建一个类:
public class Values {
int value1;
int value2;
public int getValue2() {
return value2;
}
public void setValue2(int value2) {
this.value2 = value2;
}
public int getValue1() {
return value1;
}
public void setValue1(int value1) {
this.value1 = value1;
}
}
在任何活动中,您都可以设置并获得如下值:
Values.setValue1(yourValue1);
Values.getValue1();
@TeenCoder我加了一个例子非常感谢!我在示例之前遇到过这个问题,但希望遇到这个问题的人也能解决它。如何确保它只运行editor.putin(“Integer1”),#once@TeenCoder您可以首先使用第二块代码获取整数,如果整数不等于零,请使用
putInt
方法将其写入。这样,它只会被写一次。好的,谢谢你,我想如果我尝试从一个不存在的整数中获取一个整数,它会给我一个错误。@TeenCoder我添加了一个例子非常感谢!我在示例之前遇到过这个问题,但希望遇到这个问题的人也能解决它。如何确保它只运行editor.putin(“Integer1”),#once@TeenCoder您可以首先使用第二块代码获取整数,如果整数不等于零,请使用putInt
方法将其写入。这样,它只会被写一次。好的,谢谢你,我想如果我尝试从一个不存在的整数中得到一个整数,它会给我一个错误。谢谢你和所有其他回复的人。最后我看了一个youtube教程并保存了我的整数。这比我遇到的其他数据保存方法简单100倍。谢谢你和所有其他回复的人。最后我看了一个youtube教程并保存了我的整数。这比我遇到的其他数据保存方法简单100倍。