java去掉重复的字符
时间: 2023-03-27 21:01:34 浏览: 51
你可以使用 HashSet 来去除字符串中的重复字符,具体实现可以参考以下代码:
```java
public static String removeDuplicateChars(String str) {
if (str == null) {
return null;
}
char[] chars = str.toCharArray();
Set<Character> charSet = new HashSet<>();
StringBuilder sb = new StringBuilder();
for (char c : chars) {
if (charSet.add(c)) {
sb.append(c);
}
}
return sb.toString();
}
```
相关问题
java删除重复字符
方法一是使用双重循环的方式删除字符串中的重复字符。首先将字符串转换为字符数组,然后使用两个循环遍历数组,如果发现有重复的字符,就将该字符置为'\0'。最后再将数组中的所有'\0'去掉,得到的字符串就是删除重复字符后的目标字符串。
方法二是使用正则表达式匹配的方式删除字符串中的重复字符。首先将字符串进行逆置,然后使用正则表达式替换掉重复出现的元素,最后再将字符串逆置回来,得到的字符串即为删除重复字符后的目标字符串。
java的字符串去除重复
可以使用 Set 来去除字符串中的重复字符。Set 是一种不允许重复元素的集合容器,可以将字符串中的字符存储到 Set 中,利用 Set 自动去除重复元素的特性来实现去重操作。
以下是一个示例代码:
```java
public static String removeDuplicates(String str) {
Set<Character> set = new LinkedHashSet<>();
for (int i = 0; i < str.length(); i++) {
set.add(str.charAt(i));
}
StringBuilder sb = new StringBuilder();
for (Character c : set) {
sb.append(c);
}
return sb.toString();
}
```
在这个方法中,我们首先创建了一个 LinkedHashSet 对象,然后遍历字符串中的每个字符,将其添加到 Set 中。由于 LinkedHashSet 是按照元素插入的顺序进行迭代的,因此我们可以保证去重后的字符串中字符的顺序与原字符串中出现的顺序相同。最后,我们将 Set 中的元素逐个添加到 StringBuilder 中,并返回字符串。
使用示例如下:
```java
String str = "hello world";
String result = removeDuplicates(str);
System.out.println(result); // 输出 "helowrd"
```