删除字符串中的所有相邻重复项 java
时间: 2023-09-25 16:02:54 浏览: 144
java 去除重复字符
在Java中删除字符串中的所有相邻重复项,可以使用StringBuilder类来处理。
思路如下:
1. 创建一个StringBuilder对象,并将原始字符串添加到该对象中。
2. 遍历StringBuilder对象中的字符,从第一个字符开始。
3. 检查当前字符是否和下一个字符相同。如果相同,则删除当前字符和下一个字符。
4. 继续检查下一个字符,直到遍历完所有的字符。
5. 将StringBuilder对象转换为最终的字符串结果。
以下是一个示例代码实现:
```java
public class Main {
public static void main(String[] args) {
String str = "aaabbbcccdddeee";
String result = removeAdjacentDuplicates(str);
System.out.println(result);
}
public static String removeAdjacentDuplicates(String str) {
StringBuilder sb = new StringBuilder(str);
int index = 0;
while (index < sb.length() - 1) {
if (sb.charAt(index) == sb.charAt(index + 1)) {
sb.delete(index, index + 2);
} else {
index++;
}
}
return sb.toString();
}
}
```
在上述代码中,我们定义了一个`removeAdjacentDuplicates`方法,该方法接收一个字符串作为参数,并返回删除相邻重复项后的字符串。
通过遍历StringBuilder对象中的字符,我们可以检查当前字符是否和后一个字符相同,并根据情况删除字符或者继续检查下一个字符。最后,我们将StringBuilder对象转换为最终的字符串结果并返回。
在示例代码中,字符串"aaabbbcccdddeee"会被转换为"abcd"。
阅读全文