zoukankan      html  css  js  c++  java
  • 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;
    	}
    }
    

    #后记

      这是我粗心的后果...对基础还是不够了解 不够扎实

      希望能帮到大家

  • 相关阅读:
    2020.10.08 模拟赛 题解
    可爱路径 题解
    飞行路线 题解2
    架设电话线 题解
    浅谈 LCA
    浅谈 Tarjan 算法之强连通分量(危
    初赛题目整理1
    【求助,待续!】holes
    【题解】HDU4467
    【题解】zhx154嬲
  • 原文地址:https://www.cnblogs.com/cjdty/p/10092899.html
Copyright © 2011-2022 走看看