import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class Main {
public static void main(String[] args) {
int[][] array = {{1, 2, 3}, {4, 5, 6}, {1, 2, 3}, {7, 8, 9}};
// 创建一个Set用于去重
Set<String> set = new HashSet<>();
// 遍历二维数组
for (int[] row : array) {
// 将每一行转换为字符串并添加到Set中
set.add(Arrays.toString(row));
}
// 创建一个新的二维数组,用于存储去重后的结果
int[][] distinctArray = new int[set.size()][];
int index = 0;
// 将Set中的每个元素转换为整数数组并存储到新的二维数组中
for (String s : set) {
s = s.substring(1, s.length() - 1); // 去掉字符串中的方括号
String[] elements = s.split(", "); // 拆分字符串
int[] row = new int[elements.length];
// 转换为整数数组
for (int i = 0; i < elements.length; i++) {
row[i] = Integer.parseInt(elements[i]);
}
distinctArray[index++] = row;
}
// 打印去重后的二维数组
for (int[] row : distinctArray) {
System.out.println(Arrays.toString(row));
}
}
}
以上代码中,我们首先创建了一个Set对象 set,用于存储去重后的元素。然后,我们遍历二维数组,将每一行转换为字符串,并将其添加到Set中。这样,Set会自动去除重复的元素。
接下来,我们创建一个新的二维数组 distinctArray,用于存储去重后的结果。我们遍历Set中的每个字符串元素,将其转换为整数数组,并将其存储到新的二维数组中。