您好我正在使用
在存储中编写一个arraylist private void addItemToRecentListStorage1(Hashtable h){
Storage s1 = Storage.getInstance();
ArrayList<Hashtable> a = (ArrayList<Hashtable>)s1.readObject("RecentItems");
...
...
a.add(0,h);//adding on top
s1.writeObject("RecentItems", a);
}
如果我在添加1st元素后立即检查s1,它会在存储层次结构中正确显示。
但是在添加第二个元素(HashTable)的时候,它会清除第一个存储的哈希表值,尽管它显示为一个空白元素。
意思是,我通过readObject()在arraylist中获得1个元素(HashTable),但是哈希表的所有4个元素都被清除了。这工作得早,但现在它从arraylist中消除了HashTable数据。
因此,每当我添加元素时,我的元素数量增加1。但所有以前的哈希表&#39;价值被清除。
在模拟器和设备中也发生了同样的事情。
答案 0 :(得分:0)
检查控制台中是否有异常可能是由于阵列中某些对象的序列化失败而触发的。