java 删除一个string[]数组中所有相同的数据 (递归)
import java.util.Arrays;
public class DeleteAllSameValue {
public static void main(String[] args) {
String[] arr01 = {"a", "a", "b", "s", "a", "g", "f", "b", "w", "s", "a"," "," ",null, null};
System.out.println("\n原始数组:" + Arrays.toString(arr01));
deleteSameDate(arr01);
System.out.print("删除重复元素后的数组:");
for (String s : arr01) {
if (s != null) {
System.out.print(s + " ");
}
}
}
private static void deleteSameDate(String[] arr01) {
int count = 1;
for (int i = 0; i < arr01.length; i++) {
for (int j = i + 1; j < arr01.length; j++) {
if (arr01[i] != null && !arr01[i].equals(" ") &&arr01[i].equals(arr01[j])) {
arr01[j] = null;
count++;
}
}
if (count > 1) {
System.out.println("重复出现的元素:"+ arr01[i]+", 共有"+count+"个");
arr01[i] = null;
count=1;
deleteSameDate(arr01);
}
}
}
}
输出样例:
原始数组:[a, a, b, s, a, g, f, b, w, s, a, , , null, null]
重复出现的元素:a, 共有4个
重复出现的元素:b, 共有2个
重复出现的元素:s, 共有2个
删除重复元素后的数组:g f w