如何使用java分别获取每个索引的列表元素

时间:2013-06-11 11:14:11

标签: java list

如何使用Java单独打印列表元素 .i.e。,我有一个具有不同计算值和不同更新值的元素列表。我想将calvalue1updateval1分别显示为两个不同的变量,将calvalue1变为double calValue,将updateval1变为double updateValue。循环应迭代直到列表变空。任何人都可以提供逻辑,请帮助我。

列表位于第1行0.98和23/12/2005(list.get(0))
   在第2行2.3和08/09/2013(list.get(1))
   等等

//here WebAvail is my class

List<WebAvail> list= new List<WebAvail>();
String query="select calvalue,updateval from sample where url='www.abc.com';
list=session.createQuery(query).list;
for(int i=0;i<list.size();i++)
{
  for(int j=0;j<list.get(i);j++)
  {
     list.get(j);
  }
}

即,list.get(0)给我列表的第一行。在那一行,我有calvalue1updateval1说0.98和23/12 / 2005.我需要这些值单独ie ,0.98到一个变量和23/12/2005到另一个变量(我想单独访问)。list.get(0).get(0)无效。 我怎么能得到那个。如果我喜欢上面的代码片段它给了我"ClassCastException:unable to cast java.lang.object to java.util.list".这里我没有查询和执行查询的问题。我通过转发它到jsp检查列表。并且jsp显示列表值。但是我想在WebAvail中单独列出元素,如上所述。

2 个答案:

答案 0 :(得分:0)

for(int i=0;i<list.size();i++)
{

  String a[] = list.get(j).toString().split(",");
  Double a1 = Double.parseDouble(a[0].toString());
  String a2 = a[1].toString();

 }

答案 1 :(得分:0)

你的list.get(0)也会返回列表吗?在这种情况下,您可以执行以下操作:

double calValue;
Date updateval1;
List listEle = null;
for(int i=0;i<list.size();i++){
 listEle = (List) list.get(i);
 if(null != listEle){
    if(listEle .get(0) instanceof Double)
        calValue = (Double) listEle .get(0);
    if(listEle .get(1) instanceof Date)                 
           updateval1 = (Date) listEle .get(1);
            }
}