main方法
public static void main(String[] args) {
String s = "aaabbbcccddddqweqwertt";
System.out.println(remove1(s));//方法一
System.out.println(remove2(s));//方法二
System.out.println(remove3(s));//方法三
System.out.println(remove4(s));//方法四
System.out.println(remove5(s));//方法五
}
方法一:
//字符串
public static String remove1(String str){
String s = "";
for (int i = 0; i < str.length(); i++) {
String arr =str.charAt(i) + "";
if (s.indexOf(arr) == -1) {
s=s+arr;
}
}
return s;
}
方法二:
//Set
public static String remove2(String str){
String s = "";
Set set = new HashSet();
for (int i = 0; i <str.length(); i++) {
String arr = str.charAt(i) + "";
set.add(arr);
}
return toString(set);
}
public static String toString(Set set){
String str = "";
for (Object obj : set) {
str = str+ (String)obj;
}
return str;
}
方法三:
//List
public static String remove3(String str){
List list = new ArrayList();
for (int i = 0; i < str.length(); i++) {
String s = str.charAt(i)+"";
if (!list.contains(s)) {
list.add(s);
}
}
return toString(list);
}
public static String toString(List list){
String str = "";
for (Object obj : list) {
str = str+ (String)obj;
}
return str;
}
方法四:
//HashMap
public static String remove4(String str){
Map map = new HashMap();
for (int i = 0; i < str.length(); i++) {
String s = str.charAt(i)+"";
map.put(s, 1);
}
Set set =map.keySet();
return toString1(set);
}
public static String toString1(Set set){
String str = "";
for (Object obj : set) {
str = str+ (String)obj;
}
return str;
}
方法五:
//字符串数组集合
public static String remove5(String str){
String[] arr = new String[str.length()];
String s = "";
for (int i = 0; i < str.length(); i++) {
arr[i] = str.charAt(i)+"";
}
for (int i = 0; i < arr.length; i++) {
for (int j = i+1; j <arr.length; j++) {
if (arr[i].equals(arr[j])) {
arr[j] = "s";
}
}
}
for (int i = 0; i < arr.length; i++) {
if (!arr[i].equals("s")) {
s= s+arr[i];
}
}
return s;
}