当前位置: 代码迷 >> Eclipse >> ArrayList的有关问题
  详细解决方案

ArrayList的有关问题

热度:96   发布时间:2016-04-23 14:00:46.0
ArrayList的问题
ConnectionBook cb = new ConnectionBook("HLM","Boy",123,"78201");
member.add(cb);

for(ConnectionBook c:member)
{
System.out.println("Name+Sex+Tel+Addr" + c.getName()+c.getSex()+c.getTel()+c.getAddr());
}

今天研究了一下午,在运行到这里的时候,控制台上输出的总是 Name+Sex+Tel+Addr nullnull0.0null
其中ConnectionBook类里面定义有 ArrayList<ConnectionBook> member = new ArrayList<ConnectionBook>();
其他变量函数也都有,就是这里不懂,明明已经赋值了,为什么显示不出来?

求教各位大神

------解决方案--------------------
你把ConnectionBook的代码贴出来,问题出在了ConnectionBook的构造方法执行的时候没有正确复制给对应的name sex tel addr这几个属性

------解决方案--------------------
取值肯定要这样的:
Java code
   ArrayList<ConnectionBook> member = new ArrayList<ConnectionBook>();   //如果只有一条数据的话。直接   ConnectionBook cb=member.get(0);   //然后输入就是了   //如果是多条数据的话。   //---   if(member.size()>0)    {      for(int i=0;i<member.size();i++)       {           ConnectionBook cb=member.get(i);          System.out.println("Name+Sex+Tel+Addr" + cb.getName()+cb.getSex()+cb.getTel()+cb.getAddr());       }    }
------解决方案--------------------
写错2个地方
Java code
//写错public ConnectionBook(String aName,String aSex,double aTel,String aAddr){aName=name;aSex=sex;aTel=tel;aAddr=addr;}//修改后//应该把传进来的值赋给ConnectionBoo类的私有变量//你之前的写法是把ConnectionBoo类的私有变量(null)赋给传进来的值,私有变量仍然为nullpublic ConnectionBook(String aName,String aSex,double aTel,String aAddr){name=aName;sex=aSex;tel=aTel;addr=aAddr;}//写错ConnectionBook cb = new ConnectionBook("getName","getSex",getTel,"getAddr");//修改后,getName直接传就可以了,你上面的写法等于是传了一个值为getName的String进去,这是不对的ConnectionBook cb = new ConnectionBook(getName,getSex,getTel,getAddr);
  相关解决方案