list.add数据覆盖的问题
来源:互联网 发布:淘宝已买到宝贝打不开 编辑:程序博客网 时间:2024/05/22 06:59
今天在搞一个小程序的时候,原代码如下:
int count =obj.getPropertyCount();HashMap<String, String> tempHash = new HashMap<String, String>();
for(int i=0;i<count;i+=3)
{
tempHash.put("EmpNo", obj.getProperty(i).toString());
tempHash.put("EmpName", obj.getProperty(i+1).toString());
tempHash.put("Sex",obj.getProperty(i+2).toString());
list.add(tempHash);
}
这样会出现第一组数据正常,之后的所有数据全部重复,会出现这种情况的原因是,hashmap构造出来只有一个,再循环结构中不断被引用,list中添加也是添加的引用地址,所以需要保证循环体中的每一组hashmap都唯一,也就是说构造需要放到循环体中,保证引用地址唯一。代码如下
int count =obj.getPropertyCount();
for(int i=0;i<count;i+=3)
{
HashMap<String, String> tempHash = new HashMap<String, String>();
tempHash.put("EmpNo", obj.getProperty(i).toString());
tempHash.put("EmpName", obj.getProperty(i+1).toString());
tempHash.put("Sex",obj.getProperty(i+2).toString());
list.add(tempHash);
}
- list.add数据覆盖的问题
- list.add时的数据覆盖问题
- List使用add方法添加数据时的覆盖问题
- List使用add方法添加数据时的覆盖问题
- C# List<T> Add方法循环添加时只保存了最后一次的数据(覆盖问题)
- list队列数据覆盖问题
- List add方法覆盖
- 关于list.add添加的数据都一样的问题
- 当List中add数据重复覆盖怎么办
- 当List中add数据重复覆盖怎么办
- 当List中add数据重复覆盖怎么办
- list add元素覆盖之前元素问题思考
- list.add(user)的问题
- list中add覆盖处理
- List的add()覆盖了前面的所有元素问题解决
- List使用add方法添加对象-只显示最后添加的数据的问题
- List 使用注意: List的Add(data)。 data 地址指针未变实现的是覆盖.
- C# List<> add函数总是覆盖List中原有元素的解决办法
- 【bzoj4094】[Usaco2013 Dec]Optimal Milking 线段树
- 初学QT笔记: 多个QLineEdit之间的焦点设置、切换、获取
- Hibernate的抓取策略
- Java Learning Note – inner class(2)
- 安装 Python2.7到 centos
- list.add数据覆盖的问题
- eclipse断点调试快捷键
- Hyperbolic Discounting(双曲贴现)
- linux下设置tomcat脚本启动
- SAP数据更新
- build.xml:278: Unable to find a javac compiler;
- Android系统自带样式(android:theme)(转)
- c3p0详细配置
- 机器学习