Remove duplicates from strings in Java
•
Java
I tried to traverse a string to remove duplicate characters
For example, string aabbccdef should become ABCD EF and string ABCD should become ABCD
This is me so far
public class test { public static void main(String[] args) { String input = new String("abbc"); String output = new String(); for (int i = 0; i < input.length(); i++) { for (int j = 0; j < output.length(); j++) { if (input.charAt(i) != output.charAt(j)) { output = output + input.charAt(i); } } } System.out.println(output); } }
What is the best way to do this?
Solution
Convert the string to a char array and store it in the linkedhashset This will protect your order and remove duplicates It's like:
String string = "aabbccdefatafaz"; char[] chars = string.tocharArray(); Set<Character> charSet = new LinkedHashSet<Character>(); for (char c : chars) { charSet.add(c); } StringBuilder sb = new StringBuilder(); for (Character character : charSet) { sb.append(character); } System.out.println(sb.toString());
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码