java - 按一定顺序或序列号将两个数组列表合并为一个

标签 java serialization arraylist hashmap

我找不到比这更好的标题,所以请原谅我的任何困惑。

我想将两个 HashMap 合并为一个 HashMap 。我实际上使用 HashMap 来包含 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)

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

最佳答案

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

参见Sort ArrayList of custom Objects by property举一个简单的例子。

关于java - 按一定顺序或序列号将两个数组列表合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11091852/

相关文章:

java - mac 将/usr/bin/java 中的 java 6 替换为 java 7

c# - 反序列化错误 : The XML element 'name' from namespace '' is already present in the current scope

Java判断arraylist是否包含字符串

java - Android - 无法在应用程序类实例中存储列表

java - 如何在 Spring MVC 中捕获所有未处理的异常(即没有现有的@ExceptionHandler)?

java - 图形和小程序

java - IKVM 和许可

javascript - 在 Breeze 中将字符串解析为谓词

c++ - 如何比较两个已解析的文件并将差异附加到第一个?

java - 将对象序列化到 dat 文件中