{"id":5427,"date":"2023-09-23T04:29:33","date_gmt":"2023-09-23T03:29:33","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=165997"},"modified":"2023-09-23T04:29:33","modified_gmt":"2023-09-23T03:29:33","slug":"merge-two-arrays-and-remove-duplicates-in-java","status":"publish","type":"post","link":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/2023\/09\/23\/merge-two-arrays-and-remove-duplicates-in-java\/","title":{"rendered":"Merge Two Arrays and Remove Duplicates in Java"},"content":{"rendered":"<p><img src=\"https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured-1024x536.png\" class=\"webfeedsFeaturedVisual wp-post-image\" alt=\"\" decoding=\"async\" style=\"float: left; margin-right: 5px;\" loading=\"lazy\" srcset=\"https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured-1024x536.png 1024w, https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured-300x157.png 300w, https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured-768x402.png 768w, https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured-100x52.png 100w, https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured.png 1200w\" sizes=\"(max-width: 580px) 100vw, 580px\" \/><\/p>\n<h2 id=\"bd-overview\" data-id=\"overview\">1. Overview<\/h2>\n<div class=\"bd-anchor\" id=\"overview\"><\/div>\n<p>In this tutorial, we&#8217;ll explore various methods of <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/www.baeldung.com\/java-concatenate-arrays\">merging the contents of two arrays<\/a> and subsequently eliminating the duplicates. It is similar to a union operation:<\/p>\n<ul>\n<li>array1 <em>Union<\/em> array2<\/li>\n<\/ul>\n<p>For this, we&#8217;ll consider two arrays of integers.\u00a0Basically, if the following are the two arrays:<\/p>\n<ul>\n<li>arr1 = { 3, 2, 1, 4, 5, 6, 8, 7, 6, 9 }<\/li>\n<li>arr2 = { 8, 9, 10, 11, 12, 13, 15, 14, 15, 14, 16, 17 }<\/li>\n<\/ul>\n<p>Then the result should be:<\/p>\n<ul>\n<li>mergedArray = { 3, 2, 1, 4, 5, 6, 8, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17 }<\/li>\n<\/ul>\n<h2 id=\"bd-approach-with-basic-array-operations\" data-id=\"approach-with-basic-array-operations\">2. Approach with Basic Array Operations<\/h2>\n<div class=\"bd-anchor\" id=\"approach-with-basic-array-operations\"><\/div>\n<p>Normally, this requirement can be implemented by using <em>Set<\/em> or <em>Stream<\/em> API, explained in the later sections. But those libraries are resource-intensive. Hence, <strong>we&#8217;ll focus more on a traditional approach by using basic array operations while iterating through it.<\/strong><\/p>\n<h3 id=\"bd-1-approach-for-unsorted-arrays\" data-id=\"1-approach-for-unsorted-arrays\">2.1. Approach for Unsorted Arrays<\/h3>\n<div class=\"bd-anchor\" id=\"1-approach-for-unsorted-arrays\"><\/div>\n<p><strong>First, let&#8217;s define a function that would merge the arrays. Then, we&#8217;ll create a method to remove the duplicates from it.<\/strong> Alternatively, we can remove the duplicates from the arrays and then merge them. But this won&#8217;t make much of a difference with respect to performance.<\/p>\n<p>Hence, let&#8217;s begin with the method that merges two arrays:<\/p>\n<pre><code class=\"language-java\">static int[] mergeArrays(int[] arr1, int[] arr2) {\r\n    int[] mergedArrays = new int[arr1.length + arr2.length];\r\n    System.arraycopy(arr1, 0, mergedArrays, 0, arr1.length);\r\n    System.arraycopy(arr2, 0, mergedArrays, arr1.length, arr2.length);\r\n    return mergedArrays;\r\n}<\/code><\/pre>\n<p>Going forward, we&#8217;re going to use the above method for merging the arrays in all the sections.<\/p>\n<p>Now, let&#8217;s implement the method to remove the duplicates from the merged arrays:<\/p>\n<pre><code class=\"language-java\">static int[] removeDuplicate(int[] arr) {\r\n    int[] withoutDuplicates = new int[arr.length];\r\n    int i = 0;\r\n    for (int element : arr) {\r\n        if (!isElementPresent(withoutDuplicates, element)) {\r\n            withoutDuplicates[i] = element;\r\n            i++;\r\n        }\r\n    }\r\n    int[] truncatedArray = new int[i];\r\n    System.arraycopy(withoutDuplicates, 0, truncatedArray, 0, i);\r\n    return truncatedArray;\r\n}\r\nstatic boolean isElementPresent(int[] arr, int element) {\r\n    for (int el : arr) {\r\n        if (el == element) {\r\n            return true;\r\n        }\r\n    }\r\n    return false;\r\n}<\/code><\/pre>\n<p>In the above method, <em>removeDuplicate()<\/em>, the <em>withoutDuplicates<\/em> array is populated with the elements of the merged array only if the element is not pre-existing in it.<\/p>\n<p>By using the above methods, let&#8217;s define <em>mergeAndRemoveDuplicates()<\/em>:<\/p>\n<pre><code class=\"language-java\">public static int[] mergeAndRemoveDuplicates(int[] arr1, int[] arr2) {\r\n    return removeDuplicate(mergeArrays(arr1, arr2));\r\n}<\/code><\/pre>\n<p>Let&#8217;s see how that works:<\/p>\n<pre><code class=\"language-java\">@Test\r\npublic void givenNoLibraryAndUnSortedArrays_whenArr1andArr2_thenMergeAndRemoveDuplicates() {\r\n    int[] arr1 = {3, 2, 1, 4, 5, 6, 8, 7, 9};\r\n    int[] arr2 = {8, 9, 10, 11, 12, 13, 15, 14, 15, 14, 16, 17};\r\n    int[] expectedArr = {3, 2, 1, 4, 5, 6, 8, 7, 9, 10, 11, 12, 13, 15, 14, 16, 17};\r\n    int[] mergedArr = MergeArraysAndRemoveDuplicate.mergeAndRemoveDuplicates(arr1, arr2);\r\n    assertArrayEquals(expectedArr, mergedArr);\r\n}<\/code><\/pre>\n<p>It proves we achieved the expected result. Interestingly, this approach preserves the order of the array elements as well.<\/p>\n<p><strong>Since removing duplicates involves comparing each element in the merged array with all other elements, the time complexity of this approach is close to O(n x n).<\/strong><\/p>\n<h3 id=\"bd-2-approach-for-sorted-arrays\" data-id=\"2-approach-for-sorted-arrays\">2.2. Approach for Sorted Arrays<\/h3>\n<div class=\"bd-anchor\" id=\"2-approach-for-sorted-arrays\"><\/div>\n<p><strong>Let&#8217;s consider a scenario where the elements are already sorted in the array<\/strong>. Also, in the second array, the first element is equal to or greater than the last element of the first array.<\/p>\n<p>In such a case, we can use the following method to get rid of duplicate elements:<\/p>\n<pre><code class=\"language-java\">public static int[] removeDuplicateOnSortedArray(int[] arr) {\r\n    int[] uniqueArray = new int[arr.length];\r\n    uniqueArray[0] = arr[0];\r\n    int uniqueCount = 1;\r\n    for (int i = 1; i &lt; arr.length; i++) {\r\n        if (arr[i] != arr[i - 1]) {\r\n            uniqueArray[uniqueCount] = arr[i];\r\n            uniqueCount++;\r\n        }\r\n    }\r\n    int[] truncatedArray = new int[uniqueCount];\r\n    System.arraycopy(uniqueArray, 0, truncatedArray, 0, uniqueCount);\r\n    return truncatedArray;\r\n}<\/code><\/pre>\n<p><strong>This approach is more efficient because it only compares adjacent elements<\/strong>. If they are not equal, they are added to the <em>uniqueArray<\/em> array. In contrast, earlier, the <em>isElementPresent()<\/em> method compared the array element with all the other elements in the array.<\/p>\n<p>Let&#8217;s see <em>removeDuplicateOnSortedArray()<\/em> in action:<\/p>\n<pre><code class=\"language-java\">@Test\r\npublic void givenNoLibraryAndSortedArrays_whenArr1andArr2_thenMergeAndRemoveDuplicates() {\r\n    int[] arr1 = {1, 2, 3, 4, 5, 5, 6, 7, 7, 8};\r\n    int[] arr2 = {8, 9, 10, 11, 12, 13, 14, 15, 15, 16, 17};\r\n    int[] expectedArr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17};\r\n    int[] mergedArr = MergeArraysAndRemoveDuplicate.mergeAndRemoveDuplicatesOnSortedArray(arr1, arr2);\r\n    assertArrayEquals(expectedArr, mergedArr);\r\n}<\/code><\/pre>\n<p><strong>In a worst-case scenario, the time complexity of this approach is O(n).<\/strong><\/p>\n<h2 id=\"bd-merge-arrays-using-set\" data-id=\"merge-arrays-using-set\">3. Merge Arrays Using <em>Set<\/em><\/h2>\n<div class=\"bd-anchor\" id=\"merge-arrays-using-set\"><\/div>\n<p><strong>The <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/docs.oracle.com\/en\/java\/javase\/11\/docs\/api\/java.base\/java\/util\/Set.html\">S<i>et<\/i><\/a> doesn&#8217;t allow duplicate elements. Hence, this feature helps remove duplicates<\/strong>.<\/p>\n<p>Let&#8217;s have a look at the method <em>mergeAndRemoveDuplicatesUsingSet()<\/em>:<\/p>\n<pre><code class=\"language-java\">public static int[] mergeAndRemoveDuplicatesUsingSet(int[] arr1, int[] arr2) {\r\n    int[] mergedArr = mergeArrays(arr1, arr2);\r\n    Set&lt;Integer&gt; uniqueInts = new HashSet&lt;&gt;();\r\n    for (int el : mergedArr) {\r\n        uniqueInts.add(el);\r\n    }\r\n    return getArrayFromSet(uniqueInts);\r\n}<\/code><\/pre>\n<p>While adding the array elements into the <em>Set<\/em> <em>uniqueInts<\/em>, the elements are ignored if they are already present init. At the end, <em>getArrayFromSet()<\/em> converts the <em>Set<\/em> into an array.<\/p>\n<p>Let&#8217;s see how the above method behaves:<\/p>\n<pre><code class=\"language-java\">@Test\r\npublic void givenSet_whenArr1andArr2_thenMergeAndRemoveDuplicates() {\r\n    int[] arr1 = {3, 2, 1, 4, 5, 6, 8, 7, 9};\r\n    int[] arr2 = {8, 9, 10, 11, 12, 13, 15, 14, 15, 14, 16, 17};\r\n    int[] expectedArr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17};\r\n    int[] mergedArr = MergeArraysAndRemoveDuplicate.mergeAndRemoveDuplicatesUsingSet(arr1, arr2);\r\n    assertArrayEquals(expectedArr, mergedArr);\r\n}<\/code><\/pre>\n<p>It&#8217;s evident. that the arrays no longer preserve the order of the elements.<\/p>\n<p><strong>The execution time with this approach is dependent on the number of array elements. Hence, its time complexity is O(n).<\/strong><\/p>\n<h2 id=\"bd-merge-arrays-using-stream\" data-id=\"merge-arrays-using-stream\">4. Merge Arrays Using <em>Stream<\/em><\/h2>\n<div class=\"bd-anchor\" id=\"merge-arrays-using-stream\"><\/div>\n<p><strong>The powerful <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/docs.oracle.com\/en\/java\/javase\/11\/docs\/api\/java.base\/java\/util\/stream\/Stream.html\"><em>Stream<\/em><\/a> API provides a very concise and declarative way of merging and removing duplicates from the arrays.<\/strong> For further details, let&#8217;s check out the method <em>mergeAndRemoveDuplicatesUsingStream()<\/em>:<\/p>\n<pre><code class=\"language-java\">public static int[] mergeAndRemoveDuplicatesUsingStream(int[] arr1, int[] arr2) {\r\n    Stream&lt;Integer&gt; s1 = Arrays.stream(arr1).boxed();\r\n    Stream&lt;Integer&gt; s2 = Arrays.stream(arr2).boxed();\r\n    return Stream.concat(s1, s2)\r\n      .distinct()\r\n      .mapToInt(Integer::intValue)\r\n      .toArray();\r\n}<\/code><\/pre>\n<p>Firstly, the arrays are converted individually into <em>Stream<\/em>. Then, the boxed method wraps the <em>int<\/em> elements in the arrays as <em>Integer<\/em>. Further, the <em>Stream<\/em> pipeline merges the arrays and then eliminates the duplicates from them.<\/p>\n<p>Let&#8217;s see how it works:<\/p>\n<pre><code class=\"language-java\">@Test\r\npublic void givenStream_whenArr1andArr2_thenMergeAndRemoveDuplicates() {\r\n    int[] arr1 = {3, 2, 1, 4, 5, 6, 8, 7, 9};\r\n    int[] arr2 = {8, 9, 10, 11, 12, 13, 15, 14, 15, 14, 16, 17};\r\n    int[] expectedArr = {3, 2, 1, 4, 5, 6, 8, 7, 9, 10, 11, 12, 13, 15, 14, 16, 17};\r\n    int[] mergedArr = MergeArraysAndRemoveDuplicate.mergeAndRemoveDuplicatesUsingStream(arr1, arr2);\r\n    assertArrayEquals(expectedArr, mergedArr);\r\n}<\/code><\/pre>\n<p>It&#8217;s evident that the Stream approach preserves the order of the elements in the array.<\/p>\n<p><strong>The dominant factor in deciding the time complexity is the <em>distinct()\u00a0<\/em>method in the stream, which is O(n). Overall, we can say that the time complexity of this approach is O(n).<\/strong><\/p>\n<h2 id=\"bd-conclusion\" data-id=\"conclusion\">5. Conclusion<\/h2>\n<div class=\"bd-anchor\" id=\"conclusion\"><\/div>\n<p>In this tutorial, we examined various ways to merge two arrays and then remove the duplicates from them. The most concise approach uses <em>Stream<\/em> API. The set<em>\u00a0<\/em>doesn&#8217;t preserve the order of the elements inserted in them.\u00a0However, <em>Set<\/em> is extremely effective in removing duplicates. The other two approaches preserve the order of the elements in the array.<\/p>\n<p><strong>It is worth noting that <em>Stream<\/em> and <em>Set<\/em> are quite resource-intensive, and hence, it is advisable to avoid them wherever possible.<\/strong><\/p>\n<p>As usual, the code examples are available <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/github.com\/eugenp\/tutorials\/tree\/master\/core-java-modules\/core-java-arrays-guides\">over on GitHub<\/a>.<\/p>\n<p><Img align=\"left\" border=\"0\" height=\"1\" width=\"1\" alt=\"\" style=\"border:0;float:left;margin:0;padding:0;width:1px!important;height:1px!important;\" hspace=\"0\" src=\"https:\/\/feeds.feedblitz.com\/~\/i\/794465537\/0\/baeldung\"><\/p>\n<div style=\"clear:both;padding-top:0.2em;\"><a title=\"Like on Facebook\" href=\"https:\/\/feeds.feedblitz.com\/_\/28\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/fblike20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Pin it!\" href=\"https:\/\/feeds.feedblitz.com\/_\/29\/794465537\/baeldung,https%3A%2F%2Fwww.baeldung.com%2Fwp-content%2Fuploads%2F2021%2F09%2FJava-7-Featured-1024x536.png\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/pinterest20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Tweet This\" href=\"https:\/\/feeds.feedblitz.com\/_\/24\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/twitter20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Subscribe by email\" href=\"https:\/\/feeds.feedblitz.com\/_\/19\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/email20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Subscribe by RSS\" href=\"https:\/\/feeds.feedblitz.com\/_\/20\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/rss20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a rel=\"NOFOLLOW\" title=\"View Comments\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comments\"><img decoding=\"async\" height=\"20\" style=\"border:0;margin:0;padding:0;\" src=\"https:\/\/assets.feedblitz.com\/i\/comments20.png\"><\/a>&#160;<a title=\"Follow Comments via RSS\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates\/feed\"><img decoding=\"async\" height=\"20\" style=\"border:0;margin:0;padding:0;\" src=\"https:\/\/assets.feedblitz.com\/i\/commentsrss20.png\"><\/a>&nbsp;<\/p>\n<div style=\"clear:left;\"><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comments\"><\/p>\n<h3>Comments<\/h3>\n<p><\/a><\/p>\n<ul>\n<li><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comment-14926\">In reply to fantaman.   Thanks, we&#8217;ll add a note about this.<\/a> <i>by Loredana Crusoveanu<\/i>\n<li><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comment-14920\">The \u201cApproach for Sorted Arrays\u201d only works if the second &#8230;<\/a> <i>by fantaman<\/i><\/ul>\n<\/div>\n<p>&#160;<\/p><\/div>\n\n<h2><b>Commercials Cooperation Advertisements:<\/b><\/h2>\r\n<p><br>(1) IT Teacher IT Freelance<br> <\/p>\r\n<a href=https:\/\/itteacheritfreelance.hk\/wordpress><img src=http:\/\/gamefootballmobileanimeiphone.com\/wp-content\/uploads\/2023\/09\/ITTeacherITFreelance-Website.png alt=IT\u96fb\u8166\u88dc\u7fd2 java\u88dc\u7fd2 \u70ba\u5927\u5bb6\u914d\u5c0d\u96fb\u8166\u88dc\u7fd2,IT freelance, \u79c1\u4eba\u8001\u5e2b, PHP\u88dc\u7fd2,CSS\u88dc\u7fd2,XML,Java\u88dc\u7fd2,MySQL\u88dc\u7fd2,graphic design\u88dc\u7fd2,\u4e2d\u5c0f\u5b78ICT\u88dc\u7fd2,\u4e00\u5c0d\u4e00\u79c1\u4eba\u88dc\u7fd2\u548cFreelance\u81ea\u7531\u5de5\u4f5c\u914d\u5c0d\u3002\/><\/a><p><a href=https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/findteacher>\u7acb\u523b\u8a3b\u518a\u53ca\u5831\u540d\u96fb\u8166\u88dc\u7fd2\u8ab2\u7a0b\u5427! <\/a><br>\r\n\r\n\u7535\u5b50\u8ba1\u7b97\u673a -\u6559\u80b2 -IT \u96fb\u8166\u73ed\u201d ( IT\u96fb\u8166\u88dc\u7fd2 ) \u63d0\u4f9b\u4e00\u500b\u65b9\u4fbf\u7684\u7535\u5b50\u8ba1\u7b97\u673a \u6559\u80b2\u5e73\u53f0, \u70ba\u5927\u5bb6\u914d\u5c0d\u4fe1\u606f\u6280\u672f, \u96fb\u8166 \u8001\u5e2b, IT freelance \u548c programming expert. \u8b93\u5927\u5bb6\u65b9\u4fbf\u5730\u5c31\u80fd\u627e\u5230\u5408\u9069\u7684\u96fb\u8166\u88dc\u7fd2, \u96fb\u8166\u73ed, \u5bb6\u6559, \u79c1\u4eba\u8001\u5e2b.  <br>\r\n\r\nWe are a education and information platform which you can find a IT private tutorial teacher or freelance. <br>\r\n\r\nAlso we provide different information about information technology, Computer, programming, mobile, Android, apple, game, movie, anime, animation\u2026 \r\n<\/p>\n<p><br>(2) ITSec<br> <\/p><a href=https:\/\/itsec.vip><img src=http:\/\/gamefootballmobileanimeiphone.com\/wp-content\/uploads\/2023\/09\/ITSec-Main-Promotion-Image.png alt= https:\/\/itsec.vip\/\r\nSecure Your Computers from Cyber Threats and mitigate risks with professional services to defend Hackers.  \r\nITSec provide IT Security and Compliance Services, including IT Compliance Services, Risk Assessment, IT Audit, Security Assessment and Audit, ISO 27001 Consulting and Certification, GDPR Compliance Services, Privacy Impact Assessment (PIA), Penetration test, Ethical Hacking, Vulnerabilities scan, IT Consulting, Data Privacy Consulting, Data Protection Services, Information Security Consulting, Cyber Security Consulting, Network Security Audit, Security Awareness Training.\/><\/a> \r\n<br><br> \r\n<p><a href=https:\/\/itsec.vip>www.ITSec.vip<\/a> <br> <br> \r\n<p><a href=https:\/\/sraa.com.hk>www.Sraa.com.hk<\/a> <br> <br> \r\n<p><a href=https:\/\/itsec.hk>www.ITSec.hk<\/a> <br> <br> \r\n<p><a href=https:\/\/penetrationtest.hk>www.Penetrationtest.hk<\/a> <br> <br> \r\n<p><a href=https:\/\/itseceu.uk>www.ITSeceu.uk<\/a> <br> <br> \r\nSecure Your Computers from Cyber Threats and mitigate risks with professional services to defend Hackers. <br><br>\r\nITSec provide IT Security and Compliance Services, including IT Compliance Services, Risk Assessment, IT Audit, Security Assessment and Audit, ISO 27001 Consulting and Certification, GDPR Compliance Services, Privacy Impact Assessment (PIA), Penetration test, Ethical Hacking, Vulnerabilities scan, IT Consulting, Data Privacy Consulting, Data Protection Services, Information Security Consulting, Cyber Security Consulting, Network Security Audit, Security Awareness Training. \r\n<br><br>Contact us right away. <br><br>Email (Prefer using email to contact us): <br>SalesExecutive@ITSec.vip<\/p>","protected":false},"excerpt":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/www.baeldung.com\/wp-content\/uploads\/2021\/09\/Java-7-Featured-1024x536.png\" class=\"webfeedsFeaturedVisual wp-post-image\" alt=\"\" loading=\"lazy\"><\/p>\n<p>Explore various methods of merging the contents of two arrays and eliminating the duplicates.<\/p>\n<div><a title=\"Like on Facebook\" href=\"https:\/\/feeds.feedblitz.com\/_\/28\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/fblike20.png\"><\/a>\u00a0<a title=\"Pin it!\" href=\"https:\/\/feeds.feedblitz.com\/_\/29\/794465537\/baeldung,https%3A%2F%2Fwww.baeldung.com%2Fwp-content%2Fuploads%2F2021%2F09%2FJava-7-Featured-1024x536.png\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/pinterest20.png\"><\/a>\u00a0<a title=\"Tweet This\" href=\"https:\/\/feeds.feedblitz.com\/_\/24\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/twitter20.png\"><\/a>\u00a0<a title=\"Subscribe by email\" href=\"https:\/\/feeds.feedblitz.com\/_\/19\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/email20.png\"><\/a>\u00a0<a title=\"Subscribe by RSS\" href=\"https:\/\/feeds.feedblitz.com\/_\/20\/794465537\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/rss20.png\"><\/a>\u00a0<a rel=\"NOFOLLOW\" title=\"View Comments\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comments\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/comments20.png\"><\/a>\u00a0<a title=\"Follow Comments via RSS\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates\/feed\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/commentsrss20.png\"><\/a>\u00a0<\/p>\n<div><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comments\"><\/p>\n<h3>Comments<\/h3>\n<p><\/a><\/p>\n<ul>\n<li><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comment-14926\">In reply to fantaman.   Thanks, we&#8217;ll add a note about this.<\/a> <i>by Loredana Crusoveanu<\/i><\/li>\n<li><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/java-merge-two-arrays-delete-duplicates#comment-14920\">The \u201cApproach for Sorted Arrays\u201d only works if the second &#8230;<\/a> <i>by fantaman<\/i><\/li>\n<\/ul>\n<\/div>\n<p>\u00a0<\/p><\/div>\n","protected":false},"author":259,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"site-container-style":"default","site-container-layout":"default","site-sidebar-layout":"default","disable-article-header":"default","disable-site-header":"default","disable-site-footer":"default","disable-content-area-spacing":"default","footnotes":""},"categories":[22],"tags":[61,122,127,129,124,128,125,132,131,133,126,130,123,66,94,88,97,56,64,65,60,112,40,75,95,104,33,120,105,101,98,115,30,29,41,86,70,69,68,72,71,26,118,108,87,46,55,48,52,54,51,50,83,62,58,57,2480,2481,2482,109,35,59,63,85,79,82,96,80,27,81,114,44,42,43,45,38,39,110,117,100,111,116,73,89,90,92,91,93,84,78,37,102,34,36,77,67,74,99,2483,113,119,28,121,32,47,49,53,103,31,76],"class_list":["post-5427","post","type-post","status-publish","format-standard","hentry","category-mobile","tag-airpods","tag-anime","tag-anime-characters","tag-anime-cosplay","tag-anime-edits","tag-anime-merchandise","tag-anime-movies","tag-anime-news","tag-anime-recommendations","tag-anime-reviews","tag-anime-series","tag-anime-streaming","tag-animes","tag-app-store","tag-app-store-samsung","tag-appgallery","tag-appgallery-oneplus","tag-apple","tag-apple-music","tag-apple-tv","tag-apple-watch","tag-bbc-sport","tag-best-mobile-games","tag-bixby","tag-bixby-xiaomi","tag-champions-league","tag-cyberpunk","tag-cyberpunk-2077","tag-fantasy-football","tag-fifa","tag-football","tag-formula-1","tag-fortnite","tag-free-fire","tag-free-mobile-games","tag-freebuds-pro","tag-galaxy-a52","tag-galaxy-note-20","tag-galaxy-s21","tag-galaxy-watch-4","tag-galaxy-z-fold-3","tag-game","tag-games","tag-golf","tag-harmonyos","tag-how-to-backup-iphone","tag-how-to-factory-reset-iphone","tag-how-to-reset-iphone","tag-how-to-restore-iphone","tag-how-to-unlock-iphone","tag-how-to-unlock-iphone-5","tag-how-to-unlock-iphone-6","tag-huawei","tag-ios","tag-ipad","tag-iphone","tag-java-array","tag-java-set","tag-java-streams","tag-live-soccer","tag-lol","tag-macbook","tag-macos","tag-mate-40-pro","tag-mi-11-lite","tag-mi-home-security-camera-basic-1080p","tag-mi-home-security-camera-basic-1080p-huawei","tag-mi-smart-band-6","tag-minecraft","tag-miui","tag-mlb-scores","tag-mobile-game-design","tag-mobile-game-development","tag-mobile-game-marketing","tag-mobile-game-monetization","tag-mobile-games","tag-mobile-gaming","tag-nba-scores","tag-nba-standings","tag-nfl","tag-nfl-scores","tag-nhl-scores","tag-one-ui","tag-oneplus","tag-oneplus-9-pro","tag-oneplus-buds-pro","tag-oneplus-nord-ce-5g","tag-oxygenos","tag-p40-pro-plus","tag-poco-x3-pro","tag-pokemon","tag-premier-league","tag-pubg","tag-pubg-mobile","tag-redmi-note-10-pro","tag-samsung","tag-samsung-pay","tag-soccer","tag-sorting","tag-sports","tag-steam","tag-steeam","tag-top-10-anime","tag-valorant","tag-when-do-the-iphone-7-come-out","tag-when-does-the-iphone-7-come-out","tag-when-is-the-iphone-7-coming-out","tag-world-cup","tag-xbox-series-x","tag-xiaomi"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/posts\/5427","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/users\/259"}],"replies":[{"embeddable":true,"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/comments?post=5427"}],"version-history":[{"count":1,"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/posts\/5427\/revisions"}],"predecessor-version":[{"id":5428,"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/posts\/5427\/revisions\/5428"}],"wp:attachment":[{"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/media?parent=5427"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/categories?post=5427"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gamefootballmobileanimeiphone.com\/index.php\/wp-json\/wp\/v2\/tags?post=5427"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}