当前位置: 首页 > 知识库问答 >
问题:

如何将对象列表转换为多维数组

秦才英
2023-03-14

我有一个对象列表(选择查询的结果),我想将其转换为一个数组,并且我想将查询的每一列放入数组中的一列中。我在论坛上尝试了许多解决方案,但我没有找到解决方案。

在我的bean中,我有以下列表:

private List<PhBonCmd> listEntree; // The PhBonCmd is an object model imported  has attributes like codeprod , quant ,...
.....
String sql ="select c.codeprod as codeprod , c.quant as quant ,c.date_cmd as date_cmd, c.date_expir as date_expir,c.numbco as numbco, c.auteur as auteur,"
            +"c.idcmd as idcmd ,f.nomfourn as nomfourn ,coalesce(c.quant_livre, 0) as quant_livre ,m.libelle as libelle "
            +"from commandes c,listeproduit m,fournisseur f "
            +"where c.codeprod=m.codeproduit and c.fourn=f.idfourn and c.statut='IN' and c.numbco ='"+getNumbco()+"' ";

   listEntree =  (List<PhBonCmd>) this.bcService.execRequete(sql);//Here the results of the sql query

现在我想要的是将 List(listEntree)的每一列放在一个多维数组列表中,这样就好像我想访问数组列表中的特定单个值一样,我就这样做了。

共有3个答案

慕朝明
2023-03-14

当您具有OOP功能时,我不知道这样做的原因,但它在这里。您必须使用反射来动态获取PhBonCmd的了解字段(如果您愿意,可以说列):

Class clazz = PhBonCmd.class;
Field[] fields = clazz.getFields();

String[][] myDemensionalArray = new String[fields.length()][listEntree.size()]; 
for(int i=0; i < fields.length(); i++){
    for(int j=0; j < listEntree.size(); j++){
              myDemensionalArray[i][j] = fields[i].get(listEntree.get(j));
        }
} 
宰父单弓
2023-03-14

你为什么要投到列表

如果您使用的是Spring,则可以使用RowMapper或ResultTextRactor来获得所需的行为。

戚高洁
2023-03-14

我想把查询的结果放在一个数组中,从那里,我想访问数组的元素。有这样的东西array1[row][coll]

 类似资料:
  • 问题内容: 如果我在C#中有一个二维数组-如何将其转换为包含二维数组的JSON字符串? 例如。 在JSON对象中给出一个平面的一维数组。Microsoft文档指出: “多维数组被序列化为一维数组,应该将其用作平面数组。” 问题答案: 您可以使用锯齿状数组而不是二维数组,其定义如下: 然后,JavascriptSerializer会将其序列化为[[#,#,#,#],[#,#,#,#]等形式]

  • 这行代码给我抛出了异常:线程“main”中的异常java.lang.IndexOutofBoundsExc的索引:5,大小:5 我试图将数组列表转换成多维数组。

  • 问题内容: 像这样的多维列表可以通过执行转换为一维列表。谁能解释一下这是怎么回事? 响应者说,该技术只能用于“平化”二维列表- 不适用于较高的多维列表。但是,如果重复的话,确实如此。例如,如果A是3D列表,则sum(sum(A())[[]),[])将A展平为一维列表。 问题答案: 使用运算符将一个序列加在一起。例如。第二个参数是一个可选的起始值,默认为0 。 在您的示例中,它确实将2个列表连接在一

  • 问题内容: 我有SourceObjects列表,我需要将其转换为ResultObjects列表。 我可以使用ResultObject的方法将一个对象获取到另一个对象: 我当然可以这样: 但对于能够展示如何使用 rxJava 进行相同操作的人,我将非常感激。 问题答案: 如果发出,则可以使用以下运算符: (将您的列表转换为可观察项) (将您的商品转换为其他商品) 运算符(将完成的Observable

  • 问题内容: 我从服务器得到一个 json数组: 我想使用gson将上面的json数据转换为Java 对象。我尝试了以下方法: 首先,我创建了一个 Person.java 类: 然后,在服务类中,我执行了以下操作: 我收到异常 java.lang.ClassCastException:java.util.LinkedHashMap无法强制转换为Person 。如何摆脱我的问题?我只想将json数组转

  • 问题内容: 如何转换 这是例子 有没有简单的方法可以做到这一点?什么库在这里有用? 谢谢。 问题答案: 也许http://dozer.sourceforge.net可以为您提供帮助。它是可通过xml配置的映射库。 我很快尝试了这个: 我的mappings.xml看起来像这样: 不幸的是,它仅将10映射到所有三个PojoObject属性。也许您可以看到错误并使用代码段。也许这是Dozer中的一个错误