2016-09-30 32 views
-1

我有一個包含某些日期的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不減少它的大小?

+0

@Andy那我該怎麼保存在'sharedPreferences' ArrayList中? – Skillson

+0

在google上搜索你的評論內容,你會發現很多有用的答案,祝你好運 –

+1

你的日期是字符串。你的字符串是1,1,2,2。當事物被添加到Set時,一個集合調用.equals方法來查看對象是否已經在集合中。這就是爲什麼列表有4個條目,而Set僅有2個:有兩個1和兩個2,在插入時使Set過濾器爲1和2。 –

回答