2014-04-26 84 views
0

我已烧制这是完全获取数据,但返回类型为列表的如下所示的以​​下休眠查询..存储对象类型阵列的列表为一组字符串类型

public List<Object[]> Extractingc() 
    { 

     Criteria criteria = session.createCriteria(IDetails.class); 
     ProjectionList proList = Projections.projectionList(); 
     proList.add(Projections.property("sem")); //is of string type 
     proList.add(Projections.property("tid")); //is of long type in pojo ******* 
        criteria.setProjection(proList);    
     List<Object[]> settlementIdList = criteria.list(); 
     return sst; 

    } 

现在问题出现在Java代码中是我把上述方法的结果,在一个列表进一步代码如下所示...

List<Object[]> ioaist = ioabookandinstrumenthome.Extractingc(); 

现在我想该列表的结果存储在一个HashSet其中是字符串类型,所以我创建了字符串类型的哈希集,如下所示...

Set<String> ser = new HashSet<String>(); 

现在我将结果存储在设置如下..

for (Object[] arr : ioaist) { 
ser.add((String) arr[0] , (String) arr[1]); 
} 

,但它会抛出编译时异常,请指教我如何可以存储在一组,最终将结果保存

+0

在这里发表的错误 –

回答

0

您的问题是与ser.add((String) arr[0] , (String) arr[1]);

您不能将2个值添加到一个集合。要么你正在查看Map.add(Key,Value),然后将Set<String> ser = new HashSet<String>();更改为Map<String,String> ser = new HashMap<String,String>(); and ser.add((String)arr [0],(String)arr [1]); to ser.put((字符串)ARR [0],(字符串)的常用3 [1]);`

别的 变化ser.add((String) arr[0] , (String) arr[1]);ser.add((String) arr[0]); ser.add(String) arr[1]);

相关问题