//定义一个map集合用于反向存储键值对
HashMap<Integer,String> newMap = new HashMap<Integer,String>();
//获取map集合的键Set集合
Set<String> key = map.keySet();
//定义一个数组用于存储map集合的值
int[] in = new int[key.size()];
int index = -1;
for (String name : key) {
in[++index] = map.get(name);
newMap.put(map.get(name), name);
}
for (int i : in) {
System.out.println(i+" ");
}
System.out.println("----------");
Set<Entry<Integer, String>> entrySet = newMap.entrySet();
for (Entry<Integer, String> entry : entrySet) {
System.out.println(entry);
}
System.out.println("----------");
//去除数组中的重复元素,判定相同的元素值变为-1标记
ArrayList<Integer> arr = new ArrayList<Integer>();
for (int i = 0; i < in.length-1; i++) {
for (int j = i+1; j < in.length; j++) {
if (in[i]==in[j]) {
in[i]=-1;
in[j]=-1;
}
}
}
//获取不是-1的元素,这些元素就是原数组不重复的元素
for (int i = 0; i < in.length; i++) {
if (in[i]!=-1) {
arr.add(in[i]);
}
}
//获取不重复数值对应的值并存储到一个list集合中
ArrayList<String> result = new ArrayList<String>();
for (int j = 0; j < arr.size(); j++) {
int number = (int)arr.get(j);
result.add(newMap.get(number));
}
//遍历输出这个集合
for (String string : result) {
System.out.println(string);
}
HashMap<Integer,String> newMap = new HashMap<Integer,String>();
Set<String> key = map.keySet();
int[] in = new int[key.size()];
int index = -1;
for (String name : key) {
in[++index] = map.get(name);
newMap.put(map.get(name), name);
}
for (int i : in) {
System.out.println(i+" ");
}
System.out.println("----------");
Set<Entry<Integer, String>> entrySet = newMap.entrySet();
for (Entry<Integer, String> entry : entrySet) {
System.out.println(entry);
}
System.out.println("----------");
ArrayList<Integer> arr = new ArrayList<Integer>();
for (int i = 0; i < in.length-1; i++) {
for (int j = i+1; j < in.length; j++) {
if (in[i]==in[j]) {
in[i]=-1;
in[j]=-1;
}
}
}
for (int i = 0; i < in.length; i++) {
if (in[i]!=-1) {
arr.add(in[i]);
}
}
ArrayList<String> result = new ArrayList<String>();
for (int j = 0; j < arr.size(); j++) {
int number = (int)arr.get(j);
result.add(newMap.get(number));
}
for (String string : result) {
System.out.println(string);
}