我想創建一個方法,它將從字符串中刪除所有重複項,或者只保留基於參數的同一行中的2個字符。在一行中刪除重複的相同字符
例如:
helllllllo -> helo
或
helllllllo -> hello
- 這樣可以使雙字母
目前我做刪除重複:
private String removeDuplicates(String word) {
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < word.length(); i++) {
char letter = word.charAt(i);
if (buffer.length() == 0 && letter != buffer.charAt(buffer.length() - 1)) {
buffer.append(letter);
}
}
return buffer.toString();
}
如果我想保持雙字母我正在考慮像私人字符串一樣的方法
當doubleLetter
是真的,那將返回hello
沒有helo
我不知道最有效的方式做到這一點,而無需複製大量的代碼。
的StringBuilder可能會更好一點 – BlackJoker
你也可以simly遞增的,如果循環計數器,並添加另一個如果循環,只有追加字母,當計數器低於一個閾值---這將是一個通用版本,可以處理任意數量的重複數據(但是您應該確保在掃描最後一個字母后重新設置計數器)。 –