$show=/label

Java Program To Remove Duplicates From Array (Without Using Set)

SHARE:

A quick and practical guide to remove all duplicate values from Array in java without using Set. Different ways are explained.

1. Overview

In this article, you'll learn how to remove the duplicate values from array in different ways using java programming.

Let us learn how to work with the sorted and unsorted array for this scenario.

In the previous article, we've explained the different ways to remove duplicates from List in Java 8?

Java Program To Remove Duplicates From Array (Without Using Set)


2. Removing the duplicates from the sorted array (Without using Set)

First, let us write a simple code that deletes the duplicates elements from the sorted array. If the input array is not sorted then this does not work.

Here,  you can use another array to store each non-duplicate value.

package com.javaprogramto.programs.arrays.duplicates;

public class RemoveDuplicatesSortedArray {

	public static void main(String[] args) {
		// creating an array
		int[] inputArray = new int[] { 1, 1, 2, 2, 3, 6, 6, 7, 8, 8, 9, 9 };

		// first element into new int variable
		int currentValue = inputArray[0];

		// boolean variable to check the array value is already found or not.
		boolean found = false;

		// core logic to remove duplicates.
		for (int i = 0; i < inputArray.length; i++) {
			if (currentValue == inputArray[i] && !found) {
				found = true;
			} else if (currentValue != inputArray[i]) {

				// printing value
				System.out.print(" " + currentValue);
				currentValue = inputArray[i];
				found = false;
			}
		}
		System.out.print(" " + currentValue);

	}

}
 

Output:

 1 2 3 6 7 8 9
 

3. Removing Duplicates With LinkedHashSet

Next, now let us try with LinkedHashSet to delete repeated values from array.

package com.javaprogramto.programs.arrays.duplicates;

import java.util.Arrays;
import java.util.LinkedHashSet;
import java.util.Set;

public class RemoveDuplicatesWithSet {

	public static void main(String[] args) {
		// creating an array
		Integer[] arrayWithDuplicates = new Integer[] { 3, 5, 6, 2, 38, 5, 34, 5, 69, 8, 7, 6 };

		// printing duplicates array
		System.out.println(Arrays.toString(arrayWithDuplicates));

		// passing the array to linked hashset.
		LinkedHashSet<Integer> linkedSet = new LinkedHashSet(Arrays.asList(arrayWithDuplicates));

		Integer[] finalArrayWithoutDuplicates = new Integer[linkedSet.size()] ;
		
		// converting back to int array from set
		 finalArrayWithoutDuplicates = linkedSet.toArray(finalArrayWithoutDuplicates);

		// printing the array
		System.out.println(Arrays.toString(finalArrayWithoutDuplicates));

	}

}
 

Output:

[3, 5, 6, 2, 38, 5, 34, 5, 69, 8, 7, 6]
[3, 5, 6, 2, 38, 34, 69, 8, 7]
 

LinkedHashSet is used to preserve the order of how the numbers appeared in the input array.

If you use HashSet rather than LinkedHashSet then output order is not preserved.

4. Removing duplicates from array in java 8

Finally, Look at the java 8 stream api methods that will collect only distinct values from the stream using the distinct() method. This method works for sorted and non-sorted arrays. 

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class RemoveDuplicatesJava8 {

	public static void main(String[] args) {
		// creating an array
		Integer[] arrayWithDuplicates = new Integer[] { 3, 5, 6, 2, 38, 5, 34, 5, 69, 8, 7, 6 };

		// Removing duplicates from array using java 8 stream api
		List<Integer> listWithoutDuplicatesValues = Arrays.asList(arrayWithDuplicates)
												.stream().distinct()
												.collect(Collectors.toList());

		// printing non duplicates as list.
		System.out.println(listWithoutDuplicatesValues);

	}

}

Output:

[3, 5, 6, 2, 38, 34, 69, 8, 7]

5. Conclusion

In this article, you've seen the different ways to. remove duplicate values from an array.

As usual, all examples are over GitHub.

LinkedHashSet

COMMENTS

BLOGGER

About Us

Author: Venkatesh - I love to learn and share the technical stuff.
Name

accumulo,1,ActiveMQ,2,Adsense,1,API,37,ArrayList,18,Arrays,24,Bean Creation,3,Bean Scopes,1,BiConsumer,1,Blogger Tips,1,Books,1,C Programming,1,Collection,8,Collections,37,Collector,1,Command Line,1,Comparator,1,Compile Errors,1,Configurations,7,Constants,1,Control Statements,8,Conversions,6,Core Java,149,Corona India,1,Create,2,CSS,1,Date,3,Date Time API,38,Dictionary,1,Difference,2,Download,1,Eclipse,3,Efficiently,1,Error,1,Errors,1,Exceptions,8,Fast,1,Files,17,Float,1,Font,1,Form,1,Freshers,1,Function,3,Functional Interface,2,Garbage Collector,1,Generics,4,Git,9,Grant,1,Grep,1,HashMap,2,HomeBrew,2,HTML,2,HttpClient,2,Immutable,1,Installation,1,Interview Questions,6,Iterate,2,Jackson API,3,Java,32,Java 10,1,Java 11,6,Java 12,5,Java 13,2,Java 14,2,Java 8,128,Java 8 Difference,2,Java 8 Stream Conversions,4,java 8 Stream Examples,12,Java 9,1,Java Conversions,14,Java Design Patterns,1,Java Files,1,Java Program,3,Java Programs,114,Java Spark,1,java.lang,4,java.util. function,1,JavaScript,1,jQuery,1,Kotlin,11,Kotlin Conversions,6,Kotlin Programs,10,Lambda,2,lang,29,Leap Year,1,live updates,1,LocalDate,1,Logging,1,Mac OS,3,Math,1,Matrix,6,Maven,1,Method References,1,Mockito,1,MongoDB,3,New Features,1,Operations,1,Optional,6,Oracle,5,Oracle 18C,1,Partition,1,Patterns,1,Programs,1,Property,1,Python,2,Quarkus,1,Read,1,Real Time,1,Recursion,2,Remove,2,Rest API,1,Schedules,1,Serialization,1,Servlet,2,Sort,1,Sorting Techniques,8,Spring,2,Spring Boot,23,Spring Email,1,Spring MVC,1,Streams,31,String,61,String Programs,28,String Revese,1,StringBuilder,1,Swing,1,System,1,Tags,1,Threads,11,Tomcat,1,Tomcat 8,1,Troubleshoot,26,Unix,3,Updates,3,util,5,While Loop,1,
ltr
item
JavaProgramTo.com: Java Program To Remove Duplicates From Array (Without Using Set)
Java Program To Remove Duplicates From Array (Without Using Set)
A quick and practical guide to remove all duplicate values from Array in java without using Set. Different ways are explained.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDyKzearev9OBj84SFLBldKwsczC_0rHBnKP1DMN_b9rnNS7rq5MpWhx8saAtNh_KadvD2k7pi0z-uB1dMpUMah6bHzyDL9ecF7TZcNlOCO_ukm8zYxozUpJMIv1paulVMWnAs-C-OALg/w640-h338/Java+Program+To+Remove+Duplicates+From+Array+%2528Without+Using+Set+%252B+Java+8%2529.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDyKzearev9OBj84SFLBldKwsczC_0rHBnKP1DMN_b9rnNS7rq5MpWhx8saAtNh_KadvD2k7pi0z-uB1dMpUMah6bHzyDL9ecF7TZcNlOCO_ukm8zYxozUpJMIv1paulVMWnAs-C-OALg/s72-w640-c-h338/Java+Program+To+Remove+Duplicates+From+Array+%2528Without+Using+Set+%252B+Java+8%2529.png
JavaProgramTo.com
https://www.javaprogramto.com/2020/10/java-program-to-remove-duplicates-from-arrays.html
https://www.javaprogramto.com/
https://www.javaprogramto.com/
https://www.javaprogramto.com/2020/10/java-program-to-remove-duplicates-from-arrays.html
true
3124782013468838591
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content