在Java中,求两个数组的并集可以通过以下几种方法实现:
1. 使用`Set`集合:
import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class UnionOfArrays {public static void main(String[] args) {String[] array1 = {"A", "B", "C", "D"};String[] array2 = {"C", "D", "E", "F"};String[] union = getUnion(array1, array2);System.out.println(Arrays.toString(union));}public static String[] getUnion(String[] array1, String[] array2) {SetunionSet = new HashSet<>(); for (String element : array1) {unionSet.add(element);}for (String element : array2) {unionSet.add(element);}return unionSet.toArray(new String);}}
2. 使用`ArrayList`和`contains`方法:
import java.util.ArrayList;public class UnionOfArrays {public static void main(String[] args) {String[] array1 = {"A", "B", "C", "D"};String[] array2 = {"C", "D", "E", "F"};String[] union = getUnion(array1, array2);System.out.println(Arrays.toString(union));}public static String[] getUnion(String[] array1, String[] array2) {ArrayListunionList = new ArrayList<>(); for (String element : array1) {if (!unionList.contains(element)) {unionList.add(element);}}for (String element : array2) {if (!unionList.contains(element)) {unionList.add(element);}}return unionList.toArray(new String);}}
3. 使用`Map`和`ArrayList`:
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class UnionOfArrays {public static void main(String[] args) {String[] array1 = {"1", "2", "3"};String[] array2 = {"4", "5", "6"};String[] result_union = union(array1, array2);System.out.println("并集的结果如下:");for (String str : result_union) {System.out.println(str);}}public static String[] union(String[] arr1, String[] arr2) {Mapmap = new HashMap<>(); for (String str : arr1) {map.put(str, null);}for (String str : arr2) {map.put(str, null);}Listlist = new ArrayList<>(map.keySet()); return list.toArray(new String);}}
以上代码示例展示了如何使用Java集合框架中的`Set`接口的`addAll`方法来求两个数组的并集。您可以根据您的具体需求选择合适的方法。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/120386.html