3
[56, SensIOP, 9, Open Point] - Index 0
[562, SensIOP, 92, Open Point2] - Index 1

这是我从数据库调用中获取的对象。我正在遍历列表以获取它,现在我的问题是第一个和第三个字段很长,其他字段是字符串,我如何从对象中提取它,分配它到某个变量。

更新 :

 Object object = (Object) iterator.next(); 

此对象的值设置为 1(索引 0)(它在 for 循环中)

更新 2:

  for (Iterator iterator = List2.iterator(); iterator.hasNext();) {
        Object object = (Object) iterator.next();
4

4 回答 4

2

我不知道您是如何获取数据的,但是当我以您指定的格式获取数据时,我会执行以下操作:

List<Object[]> objects = query.list();
if (objects.size() > 0) {
    for (int j = 0; j < objects.size(); j++) {
        Object[] object = objects.get(j);
        BigInteger firstValue = (BigInteger) object[0];
        String secondValue = (String) object[1];
        BigInteger thirdValue = (BigInteger) object[2];
        String forthValue = (String) object[3];

        long firstValueLong = firstValue.longValue();
        long thirdValueLong = thirdValue.longValue();
    }
}
于 2012-10-10T10:05:51.807 回答
2

我在“RAS”帖子的帮助下找到了结果,非常感谢

List<Object> resultList =(List<Object>) em.createNativeQuery("SELECT isbillpayable,isothracctrfable FROM usrfacaccounts ").getResultList();

          for (Iterator<Object> it = resultList.iterator(); it.hasNext();) {
            Object[] object = (Object[]) it.next();
            String firstValue = (String) object[0];
            System.out.println("isbillpayable"+firstValue);
        }
于 2014-02-19T07:07:30.867 回答
1
using this function you can get result :

 String a1= arrayname[0] ; //[56, SensIOP, 9, Open Point] 

 a1=split(',',a1);
 String Fisrtval=a1[0];
 String Thirdtval=a1[2];

请参考:http ://docs.jboss.org/hibernate/orm/3.6/javadocs/org/hibernate/util/StringHelper.html#split (java.lang.String, java.lang.String)

于 2012-10-10T06:03:09.723 回答
1

您必须将其转换为 long for long 属性才能分配。

例如

Long l = (Long) yourOblList.iterator().next();

看看为什么泛型变得泛型

于 2012-10-10T05:59:48.183 回答