-3

如何使用 Java 分别打印列表元素。即,我有一个具有不同计算值和不同更新值的元素列表。我想分别显示calvalue1updateval1分成两个不同的变量,分别表示calvalue1进入double calValueupdateval1进入double updateValue。循环应该迭代直到列表变为空。谁能提供我的逻辑,请帮助我。

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

4

2 回答 2

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();

 }
于 2013-06-11T11:22:09.250 回答
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);
            }
}
于 2013-06-11T11:26:33.053 回答