友情提醒:
先看文章目录,大致了解文章知识点结构,点击文章目录可直接跳转到文章指定位置。
第一章、常规字符串去重
题目描述:aababbc–>abc
public class Test {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("a");
list.add("a");
list.add("b");
list.add("a");
list.add("b");
list.add("b");
list.add("c");
System.out.println("没有去重前的数据为>>>" + list.toString());
for (int i = 0; i < list.size() - 1; i++) {
for (int j = list.size() - 1; j > i; j--) {
if (list.get(j).equals(list.get(i))) {
list.remove(j);
}
}
}
System.out.println("去重后的数据为>>>" + list.toString());
}
}
第二章、字符串相邻字符去重
题目描述:aaeecceeeaaff–》aeceaf
package com.bjpowernode.springboot.web;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Atest {
public static void main(String[] args) {
String str = "aaccddeeeaaff";
String regex = "(.)\\1+"; // 正则表达式
Pattern pattern = Pattern.compile(regex); // 创建Pattern实例
Matcher matcher = pattern.matcher(str); // 创建Matcher实例
String result = matcher.replaceAll("$1"); // 匹配并去重
System.out.println(result); // 输出去重后的字符串
// 输出结果为:“aeceaf”
}
}