使用collection -Stream将java List转换为object

时间:2016-11-10 11:20:03

标签: java list object

从方法列表> method()我得到这样的输出有3个元素

[123456, 10, 03-JAN-16]
[956233, 20, 03-JAN-16]
[254656, 30, 03-JAN-16]
[455556, 40, 04-JAN-16]
[548566, 50, 03-JAN-16]
[215663, 60, 03-JAN-16]

我需要将上面的结果存储在pojo类名称' ClassName'它包含以下列col1,col2和col3,所以我尝试将以下代码作为

运行
public void method() {
    try {
        List<List<String>> list = testDAO.methodName();
        List<ClassName> className= new ArrayList<ClassName>();
        for (Iterator<List<String>> iterator = list.iterator(); iterator.hasNext();) {
            List<String> list2 = (List<String>) iterator.next();
            int i = 0;
            ClassName className= new ClassName ();
            for (Iterator<String> iterator2 = list2.iterator(); iterator2.hasNext();) {
                String string = (String) iterator2.next();
                /* System.out.println(string); */
                if (i == 0)
                    className.setCol1(string);
                else if (i == 1)
                    className.setCol2(Long.parseLong(string));
                else if (i == 2)
                    className.setCol3(string);
                i++;

            }
            odhs.add(className);

            System.out.println(className);
            // System.out.println(className.col2());
            // System.out.println(className.col3());
        }
        // System.out.println("Total size: "+ odhs.size());
    } catch (Exception e) {
        e.printStackTrace();
    }
}

但我得到了输出

com.project.model.ClassName@61af1510
com.project.model.ClassName@37af1f93
com.project.model.ClassName@778d82e9
com.project.model.ClassName@408e96d9
com.project.model.ClassName@59901c4d
com.project.model.ClassName@168cd36b
com.project.model.ClassName@d8d9199
com.project.model.ClassName@3901f6af

请提供解决方案,以便在POJO课程中保存数据&#39; ClassName&#39;

3 个答案:

答案 0 :(得分:0)

您的班级Odh必须覆盖Try an example on .NET Fiddle方法。

答案 1 :(得分:0)

覆盖Odh的toString方法。

假设您的参数名称为dist_idpvpost_date且所有参数均为String类型

@Override
public String toString(){
   return getClass().getSimpleName() + "[dist_id=" + dist_id + ", pv=" + pv + ", post_date=" + post_date + "]";
}

这将允许您打印

  

Odh [dist_id = 123456,pv = 10,post_date = 03-JAN-16]

答案 2 :(得分:0)

Odh课程上,您必须覆盖toString方法。

@Override
    public String toString ( )
    {
        return "Odh [firstAttribute=" + firstAttribute + ", secondAttribute=" + secondAttribute + "]";
    }