java ArrayList添加元素全部一样
#开始
今天遇到了一个很神奇的事情
也即是我在用ArrayList的add方法循环加入对象的时候 发现添加的元素全部都是一样的
定位错误定位了一个下午.... 错误位置就是哪一个位置 但是就是不知道为啥错了
while(rs.next())
{ GroupInfo gi = new GroupInfo(rs.getString("GroupID"),rs.getString("date"));
ce.GroupList.add(gi);
ce.CQ.logInfo("connectDB","获取QQ群: "+ce.GroupList.get(i++).GroupID);
}
百度了类似的问题 https://bbs.csdn.net/topics/340178073
上面链接里面的问题是因为所有引用全部指向同一个对象
但是我这里确实是用用了new开辟了内存啊
#解决
直到看到这个老哥的博客 https://blog.csdn.net/zouhaipeng/article/details/53160124
突然醒悟了
public class GroupInfo
{
public static String GroupID;
public static String date; public GroupInfo(String fromGroup,String date2)
{
GroupID = fromGroup;
date = date2;
}
}
看到那个static了么 害惨我了 QAQ
改成下面这样就好了
public class GroupInfo
{
public String GroupID;
public String date; public GroupInfo(String fromGroup,String date2)
{
GroupID = fromGroup;
date = date2;
}
}
#后记
这是我粗心的后果...对基础还是不够了解 不够扎实
希望能帮到大家
java ArrayList添加元素全部一样的更多相关文章
- jdk 1.8下 java ArrayList 添加元素解析
转载请注明http://www.cnblogs.com/majianming/p/8006452.html 有人问我,java ArrayList底层是怎么实现的?我就回答数组,他再问我,那它是怎么实 ...
- java:Conllection中的List,ArrayList添加元素,删除元素,输出元素
java:Conllection中的List,ArrayList添加元素,删除元素,输出元素 //为list接口实例化 List<String> addlist = new ArrayLi ...
- 浅析 java ArrayList
浅析 java ArrayList 简介 容器是java提供的一些列的数据结构,也可以叫语法糖.容器就是用来装在其他类型数据的数据结构. ArrayList是数组列表所以他继承了数组的优缺点.同时他也 ...
- Java ArrayList源码剖析
转自: Java ArrayList源码剖析 总体介绍 ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现.除该类未实现同步外 ...
- Java ArrayList 源代码分析
Java ArrayList 之前曾经参考 数据结构与算法这本书写过ArrayList的demo,本来以为实现起来都差不多,今天抽空看了下jdk中的ArrayList的实现,差距还是很大啊 首先看一下 ...
- Java——ArrayList底层源码分析
1.简介 ArrayList 是最常用的 List 实现类,内部是通过数组实现的,它允许对元素进行快速随机访问.数组的缺点是每个元素之间不能有间隔, 当数组大小不满足时需要增加存储能力,就要将已经有数 ...
- Java ArrayList【笔记】
Java ArrayList[笔记] ArrayList ArrayList基本结构 ArrayList 整体架构比较简单,就是一个数组结构 源码中的基本概念 index 表示数组的下标,从 0 开始 ...
- Java ArrayList、Vector和LinkedList等的差别与用法(转)
Java ArrayList.Vector和LinkedList等的差别与用法(转) ArrayList 和Vector是采取数组体式格式存储数据,此数组元素数大于实际存储的数据以便增长和插入元素,都 ...
- Java ArrayList中对象的排序 (Comparable VS Comparator)
我们通常使用Collections.sort()方法来对一个简单的数据列表排序.但是当ArrayList是由自定义对象组成的,就需要使用comparable或者comparator接口了.在使用这两者 ...
随机推荐
- pl/sql developer试用期结束
(产品代码)Product Code:ljkfuhjpccxt8xq2re37n97595ldmv9kch (序列号)Serial Number:302967 (口令)Password:xs374ca ...
- C#.net连接Sybase的方法
一 .ODBC方式连接 1 安装Sybase客户端,安装ODBC驱动,配置DSN<略> 2 连接代码 string strconn = "DSN=TEST;SRVR=TEST;D ...
- 杭电oj1995——汉诺塔V(java实现)
正文之前,先说下做这题的心路历程(简直心累) 这是今天下午的第一道题 第一次看到题目标题——汉诺塔 内心OS:wc,汉诺塔诶,听名字就很难诶,没做过诶,肯定很难实现吧,不行,我得去看看讲解 然后就上b ...
- 12c的PDB创建DIRECTORY要注意与PATH_PREFIX的关系(ORA-65254)
在创建PDB过程中如果使用了带PATH_PREFIX的参数,意味着在创建DIRECTORY目录时需要指定相对路径,而不能指定其它绝对路径.来自博客园AskScuti 11g整库作为一个PDB迁移至阿里 ...
- lvm磁盘扩容
LVM实现新挂载磁盘扩容到原有目录 #查看磁盘 fdisk -l #创建pv pvcreate /dev/sdb [root@VM-67-49 ~]# pvcreate /dev/sdb Physic ...
- exists和not exists关键字
表A ID NAME 1 A1 2 A2 3 A3 表B ID AID NAME 1 1 B1 2 2 B2 3 2 B3 SELECT ID,NAME FROM A ...
- php:对象(object)数据类型实例详解
什么是对象? 对象是存储数据和有关如何处理数据的信息的数据类型.是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位.一个对象由一组属性和对这组属性进行操作的一组服务组成. 语法 在 PHP ...
- Flink流处理(一)- 状态流处理简介
1. Flink 简介 Flink 是一个分布式流处理器,提供直观且易于使用的API,以供实现有状态的流处理应用.它能够以fault-tolerant的方式高效地运行在大规模系统中. 流处理技术在当今 ...
- Day4 注解 泛型
注解是什么 注释是绑定到程序源代码元素的元数据,对它们运行的代码的操作没有影响. https://blog.csdn.net/SDDDLLL/article/details/93509699 他们 ...
- D. Mahmoud and Ehab and another array construction task 因子分界模板+贪心+数学
D. Mahmoud and Ehab and another array construction task 因子分解模板 题意 给出一个原序列a 找出一个字典序大于a的序列b,使得任意 \(i!= ...