当前位置: 代码迷 >> Java相关 >> LinkedList的使用有关问题
  详细解决方案

LinkedList的使用有关问题

热度:2511   发布时间:2013-02-25 21:46:51.0
LinkedList的使用问题
使用LinkedList存放了一些对象,比如说有:

Class Receive{}
Class Reply{}
Receive receive = new Receive();
Reply reply = new Reply();

LinkedList lst = new LinkedList();
lst.add(receive);
lst.add(reply);

现在我要取出lst中的内容,但是我并不知道里面存放的内容的具体类型,即不知道第一个元素第二个元素分别为Receive类和Reply类实例。但是我需要提取出lst中的内容,针对每个元素获取里面包含的数据。例如,在Receive中有属性int d;receive实例对其赋值,那么我需要在lst中获取到这个值。
应该如何处理???
谢谢!!!

------解决方案--------------------------------------------------------
object
+
instanceof

网上查一下,例子很多的
------解决方案--------------------------------------------------------
如1楼所说:
Object obj = lst.get(i);
if (obj instanceof Receive) {
...
} else if (obj instanceof Reply) {
...
}


另一种是直接尝试利用反射来获取
Object obj = lst.get(i);
Class clz = obj.getClass();
Field field = clz.getField("id");
Object id = field.get(obj);
System.out.println(id);
------解决方案--------------------------------------------------------
用泛型可以解决这样的问题,,
------解决方案--------------------------------------------------------
探讨
如1楼所说:
Object obj = lst.get(i);
if (obj instanceof Receive) {
...
} else if (obj instanceof Reply) {
...
}


另一种是直接尝试利用反射来获取
Object obj = lst.get(i);
Class clz = obj.getClass();
Field ……
  相关解决方案