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
二维码
