我有一个包含某些日期的ArrayList。 我想将它保存到用户的存储空间以便以后使用。 这里的代码,我已经试过:使用SharedPreferences保存包含重复值的ArrayList
ArrayList<String> dates = new ArrayList<>();
dates.add("1 شهریور 1395");
dates.add("1 شهریور 1395");
dates.add("2 شهریور 1395");
dates.add("2 شهریور 1395");
SharedPreferences preferences;
SharedPreferences.Editor editor;
preferences = getPreferences(Context.MODE_PRIVATE);
editor = preferences.edit();
Set<String> dateSet = new Set(dates);
editor.putStringSet(dateSet);
但是当我打电话dateSet.size()
以及它是正常的,它返回2 ...不是4
我怎么能救我dates
不减少它的大小?
@Andy那我该怎么保存在'sharedPreferences' ArrayList中? – Skillson
在google上搜索你的评论内容,你会发现很多有用的答案,祝你好运 –
你的日期是字符串。你的字符串是1,1,2,2。当事物被添加到Set时,一个集合调用.equals方法来查看对象是否已经在集合中。这就是为什么列表有4个条目,而Set仅有2个:有两个1和两个2,在插入时使Set过滤器为1和2。 –