【问题标题】:How to retrieve each value from List<Object>如何从 List<Object> 中检索每个值
【发布时间】:2015-08-02 16:21:37
【问题描述】:

当我执行这个查询时,我将结果存储到列表对象中

Query vodquery = session.createQuery(
    "select vod.videoid,vod.videotitle,alb.language,alb.genre "+
    "from Videos as vod,Album as alb "+
    "where vod.videoType =:videotype and vod.albumId=alb.id "+
    "group by vod.videoId").setParameter("videotype","MOV");
List<Object> videolist = vodquery.list();

我需要检索每个结果,但是当我使用此代码时

for(int i = 0; i < videolist.size(); i++) {
    System.out.println(videolist.get(i));
}

结果是

[Ljava.lang.Object;@b7e548
[Ljava.lang.Object;@12e0986
[Ljava.lang.Object;@1735396

当我使用这段代码时

for (int i=0; i<videolist.size(); i++){
   Object[] row = (Object[]) videolist.get(i);
   System.out.println("Element "+i+Arrays.toString(row));
}

得到这样的结果

Element 0[VOD1000, sdf, English, Action, null, d, Entertainment, Action, comody, 0, null, null, dddddd]

Element 1[VOD1002, sdf, NONE, NONE]
Element 2[VOD1004, sdf, NONE, NONE]
Element 3[VOD1005, sdf, NONE, NONE]

但我需要从每一行中获取每个值。我怎样才能做到这一点。我需要遍历结果中的每个值

【问题讨论】:

  • 以下解决方案是正确的,但不要忘记,如果您需要对 List 对象进行更改,您将需要使用 Iterator 及其方法;)

标签: java arrays list spring-mvc object


【解决方案1】:

改变你的循环:

for (int i=0; i < videolist.size(); i++){
       Object[] row = (Object[]) videolist.get(i);
       for(Object obj : row) {
            System.out.println("Element "+ i +obj));  
       } 
    }

【讨论】:

  • 显示错误数组类型中的toString(long[])方法不适用于参数(Object)
  • 欢迎@PriyankaShaju :)
【解决方案2】:

您可以使用两个嵌套循环:

for (Object[] row : videolist){
    for(Object value : row) {
        // use value here
    }
}

【讨论】:

  • It is not object[]...显示错误 Type mismatch: cannot convert from element type Object to Object[]
【解决方案3】:

可能是这样的:

for (int i=0; i<videolist.size(); i++){
   Object[] row = (Object[]) videolist.get(i);
    for(Object value : row) {
        // use value here
    }
}

【讨论】:

    猜你喜欢
    • 2014-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-07
    • 2021-12-25
    • 2018-06-01
    • 2014-11-14
    • 2020-11-02
    相关资源
    最近更新 更多