使用ArrayList.add()时 后面的数据完全覆盖前面的数据
来源:互联网 发布:斯蒂芬库里 知乎 编辑:程序博客网 时间:2024/05/21 21:48
今天在写项目时发现了一个bug
question = new Question();question = GetQuestion.GetQuestion(str);list.add(question);
GetQuestion中的GetQuestion方法是解析传入的字符串,以question对象返回。但是之后发现之后解析的question会覆盖list中前面的question,结果是list中全是最后一次解析的question。
经过一番调试才发现GetQuestion中的GetQuestion方法中的question变量是静态的(static),也就是我们放入list中的对象都是这个静态的question,虽然我们每次的question不一样,但是传入的引用都是GetQuestion中这个静态的变量,以至于最后list中都是最后一次解析的question,也就是那个静态变量。
所以以后向list中传数据不要传静态变量而且每次传入的数据要重新new一个保证是一个新的引用
0 0
- 使用ArrayList.add()时 后面的数据完全覆盖前面的数据
- setCellValue 后面的数据被前面的数据覆盖
- python 使用list.append()后前面的数据被后面的数据覆盖-解决办法
- python 使用list.append()后前面的数据被后面的数据覆盖-解决办法
- ArrayList.add后,前面数据被覆盖的问题
- ArrayList.add(Object) 前面数据被覆盖的问题
- ArrayList.add后,前面数据被覆盖的问题
- iOS开发往字典里面添加数据会出现后面的数据覆盖前面的情况
- QT5 QList<QImage> 中后面数据将前面数据覆盖问题的解决方案
- Java 使用ArrayList.add() 前面所有值被 覆盖 的问题
- List使用add方法添加数据时的覆盖问题
- List使用add方法添加数据时的覆盖问题
- list.add时的数据覆盖问题
- ArrayList 前面的值被后面的值覆盖的原因
- ArrayList add方法会导致数据覆盖。
- ArrayList add()方法覆盖数据解决办法
- list.add数据覆盖的问题
- 后面的TextView覆盖住前面的Button
- C语言---“亲密数”问题
- USACO 1.5-Superprime Rib
- lucene 5.3.1
- android GMS认证之CTS测试命令详细
- IEnumerable和IEnumerator 详解
- 使用ArrayList.add()时 后面的数据完全覆盖前面的数据
- iOS、MAC开源项目及库汇总
- brew的使用命令
- 初识openstack
- Java equals方法
- js计算器
- visudo 配置
- BZOJ 3931 CQOI 2015 网络吞吐量 最大流 最短路
- 安卓动态调试方法总结