该示例将演示如何使用 java、guava 和 apache commons 将两个列表合成一个列表。
private List<String> firstHalfStates = Lists.newArrayList(
"Alabama",
"Alaska",
"Arizona",
"Arkansas",
...
"Maryland",
"Massachusetts",
"Michigan",
"Minnesota");
private List<String> secondHalfStates = Lists.newArrayList(
"Mississippi",
"Missouri",
"Montana",
...
"Washington",
"West Virginia",
"Wisconsin",
"Wyoming");
直接使用java,我们将通过将firstHalfStates传递给构造函数来初始化arraylist,然后调用Lists.addAll,它将所有元素按指定集合顺序附加到列表末尾。
@Test
public void join_two_lists_in_java () {
List<String> allStates = new ArrayList<String>(firstHalfStates);
allStates.addAll(secondHalfStates);
assertTrue(allStates.size() == 50);
}
使用 guava,我们将通过调用 Lists.newArrayList 并传入 Iterables.concat 的结果来初始化列表,它将两个数组列表组合成一个可迭代对象。
@Test
public void combine_two_lists_in_java_with_guava () {
List<String> allStates = Lists.newArrayList(
Iterables.concat(firstHalfStates, secondHalfStates));
assertTrue(allStates.size() == 50);
}
Apache commons ListUtils 为 List 实例提供了一系列实用方法。我们将调用 ListUtils.union,它将第二个列表附加到第一个列表中。
@Test
public void combine_two_lists_in_java_with_apache_commons () {
@SuppressWarnings("unchecked")
List<String> allStates = ListUtils.union(
firstHalfStates,
secondHalfStates);
assertTrue(allStates.size() == 50);
}
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : http://www.leveluplunch.com/java/examples/join-two-lists/
内容来源于网络,如有侵权,请联系作者删除!