【问题标题】:combine two arraylist in one with certain order or a serial id以一定的顺序或序列号将两个数组列表合二为一
【发布时间】:2012-06-18 22:12:10
【问题描述】:

我找不到比这更好的标题了,所以请原谅我有任何混淆。

我想把两个hashmap合并成一个hashmap。我实际上是用hashmaps来包含key=coloumNamevalue= coloumValues的表的数据。 我的代码看起来像

HashMap<String, ArrayList> FTMap = table1.getColumn().getColumnValues()
HashMap<String, ArrayList> STMap = table2.getColumn().getColumnValues()

HashMap<String, ArrayList> FinalTableMap = new HashMap()

FinalTableMap.putAll(FTMap)
FinalTableMap.putAll(STMap)

我对列名没有任何问题,但是合并后列值的顺序不起作用。由于我使用的是arraylist,我正在尝试比较两个arraylist并将其放入最终的arraylist中,该arraylist可以用作最终hashmap的值。我需要一些关于两个arraylist之间匹配的建议或建议。

【问题讨论】:

  • 我的代码包含一些其他的东西(这是有效的)所以我没有在这里提交任何代码。如果我的问题不够清楚,请告诉我。
  • 哈希图内容和预期输出的一些示例会有所帮助。
  • yankee -让我们假设 hashmap 的内容是这样的
  • FTMap- Name id Gender A 1 Male B 2 Female C 3 Male STMap Name Gender Country X Male Australia A Male Germany B Female India 我的输出类似于 Name id Gender Country A 1 Male Australia B 2 Female德国 C 3 男性印度 X 男性 我想要的是姓名 ID 性别 国家 A 1 男性德国 B 2 女性印度 C 3 男性 Null X null 男性澳大利亚 @yankee 谢谢
  • @user1464906 不可读。请将其编辑到您可以正确格式化的帖子中。

标签: java serialization arraylist hashmap


【解决方案1】:

使用addAll 组合列表后,您可以使用Collections.sort(List, Comparator)ArrayList 进行排序。在您的Comparatorcompare 函数中,您将使用您希望排序的值(您提到序列号?)比较这两个对象。

有关简短示例,请参阅 Sort ArrayList of custom Objects by property

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-15
    • 1970-01-01
    • 1970-01-01
    • 2017-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多