我试图在启动之间保存一组字符串。
Set<String> set = new HashSet<>(InAppProperties.getInstance().checkedCurrencies);
PM.setStringSet("checkedCurrencies", set);
PM.commitAll();
//second way
//PM.setStringSet("checkedCurrencies", new HashSet(Arrays.asList(new String[] { "EUR", "RUB"})));
// PM.commitAll();
InAppProperties中的声明:
public Set<String> checkedCurrencies;
所以,如果我正在做第一种方式 - 它在重新启动应用程序后无效,仅用于在更改设置后使用应用程序。
如果我是第二种方式 - 它工作正常,但我不知道为什么。
有人可以解释一下吗? 调试在两种情况下都显示相同的数据类型 - HashSet