Java 字符串如何去重
时间: 2024-02-27 13:55:28 浏览: 162
Java 中可以通过以下步骤实现字符串去重:
1. 将字符串转换为字符数组;
2. 创建一个 HashSet;
3. 遍历字符数组,将每个字符添加到 HashSet 中;
4. 将 HashSet 转换为字符串。
以下是 Java 代码示例:
```java
String str = "hello world";
char[] charArray = str.toCharArray();
Set<Character> charSet = new HashSet<>();
for (char c : charArray) {
charSet.add(c);
}
StringBuilder sb = new StringBuilder();
for (Character c : charSet) {
sb.append(c);
}
String result = sb.toString();
System.out.println(result);
```
输出结果为:
```
helo wrd
```
其中,HashSet 的特性保证了去重后的字符串中,每个字符只会出现一次。最终使用 `StringBuilder` 将 HashSet 中的字符连接成一个字符串输出。
相关问题
Java字符串去重
可以使用Set数据结构来实现Java字符串去重,具体代码如下:
```java
String str = "aaabbbccc";
Set<Character> set = new HashSet<>();
for (int i = 0; i < str.length(); i++) {
set.add(str.charAt(i));
}
StringBuilder sb = new StringBuilder();
for (Character c : set) {
sb.append(c);
}
String result = sb.toString(); // 去重后的字符串
```
上述代码中,首先将字符串中的每一个字符添加到Set中,由于Set会自动去重,所以最后Set中只会保留不重复的字符。然后再将Set中的字符按顺序拼接起来,即可得到去重后的字符串。
java 字符串去重
在 Java 中,字符串去重可以使用多种方法实现,以下是其中的一些常见方法:
1. **HashSet**:利用 HashSet 的无序、不允许重复的特点,将字符串添加到集合中,最后再将集合转换回字符串数组。示例代码如下:
```java
String str = "aabbcc";
Set<Character> set = new HashSet<>();
for (char c : str.toCharArray()) {
set.add(c);
}
StringBuilder sb = new StringBuilder(set.size());
set.forEach(sb::append);
String uniqueStr = sb.toString();
```
2. **HashMap**:通过创建 HashMap,键(key)为字符,值(value)设为 null。由于 HashMap 内部不允许重复键,所以插入后字符串即已去重。然后再将其转换为 String。示例:
```java
String str = "aabbcc";
HashMap<Character, Boolean> map = new HashMap<>();
String uniqueStr = "";
for (char c : str.toCharArray()) {
if (!map.containsKey(c)) {
uniqueStr += c;
map.put(c, true);
}
}
```
3. **正则表达式**:利用 Java 的 replaceAll 函数替换重复的字符。示例:
```java
String str = "aabbcc";
str = str.replaceAll("\\b\\w+\\b", "$0");
```
上述代码会保留第一个遇到的字符。
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)