Java合并ArrayList并去重:拼音元素合并实例
Java合并ArrayList并去重:拼音元素合并实例
本文将介绍如何使用Java将两个包含拼音元素的ArrayList合并并去重。
问题描述:
假设有两个ArrayList,分别存储了姓名拼音的首字母,例如:
- array1存储'李明'姓氏拼音的首字母:'l', 'm', 'a', 'b', 'a', 'c', 'd'...
- array2存储'李明'名字拼音的首字母:'m', 'i', 'n', 'g', 'e', 'f', 'a', 'd', 'g'...
目标是将这两个ArrayList合并成一个集合,并去除重复元素。
解决方案:
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {
// 1. 创建ArrayList array1
ArrayList<String> array1 = new ArrayList<>();
// 2. 使用add方法为array1添加元素
array1.add('l');
array1.add('m');
array1.add('a');
array1.add('b');
array1.add('a');
array1.add('c');
array1.add('d');
// 3. 创建ArrayList array2
ArrayList<String> array2 = new ArrayList<>();
// 4. 使用Collections的addAll方法为array2添加元素
Collections.addAll(array2, 'm', 'i', 'n', 'g', 'e', 'f', 'a', 'd', 'g');
// 5. 创建HashSet用于存放去除重复的元素
HashSet<String> mergedSet = new HashSet<>();
// 6. 使用迭代器遍历array1,将每个元素添加到HashSet中
Iterator<String> iterator = array1.iterator();
while (iterator.hasNext()) {
mergedSet.add(iterator.next());
}
// 7. 使用增强for循环遍历array2,将每个元素添加到HashSet中
for (String element : array2) {
mergedSet.add(element);
}
// 8. 输出HashSet中去除重复后的元素
for (String element : mergedSet) {
System.out.println(element);
}
}
}
代码解释:
- 首先创建两个ArrayList,
array1和array2,分别存储姓氏和名字的拼音首字母。 - 使用
add方法将元素添加到array1中。 - 使用
Collections.addAll方法将元素添加到array2中。 - 创建一个HashSet
mergedSet,用于存储合并后的不重复元素。 - 使用迭代器遍历
array1,并将每个元素添加到mergedSet中。 - 使用增强for循环遍历
array2,并将每个元素添加到mergedSet中。 - 最后,使用增强for循环遍历
mergedSet,并打印每个元素,即可输出合并后的不重复元素。
运行结果:
程序运行后,将输出以下结果,每个字母占一行:
l m a b c d i g e f
总结:
本文介绍了如何使用Java合并两个ArrayList并去重,并提供了详细的代码示例和解释。通过使用HashSet,可以高效地实现去重操作。希望本文能帮助你更好地理解和使用Java集合框架。
原文地址: https://www.cveoy.top/t/topic/ojy 著作权归作者所有。请勿转载和采集!