请教 hashmap 转 set 的一个问题。
本帖最后由 blackkettle 于 2012-11-12 15:44:25 编辑 各位达人,想请教一个 hashmap 转 set 的问题。
HashMap<Integer, Double[]> hs=new HashMap<Integer, Double[]>();
Set<Map.Entry<Integer, Double[]>> set=hs.entrySet();
Set<Double[]> valueSet = new HashSet<Double[]>();
Set<Integer> keySet = hm1.keySet();
Iterator<Integer> keyIt = keySet.iterator();
while(keyIt.hasNext()) {
valueSet.add(hm1.get(keyIt.next()));
}
ArrayList<Double[]>?hm1?=?new?ArrayList<Double[]>();
Double[][] dss = new Double[set.size()][];
set.toArray(dss);
for (Double[] ds : dss ) {
for (double d : ds) {
System.out.print(d + " ");
}
System.out.println("");
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class HashMap_01 {
public static void main(String args[]) {
HashMap<Integer, Double[]> hm1 = new HashMap<Integer, Double[]>();
hm1.put(1, new Double[] { 100.0, 200.0 });
hm1.put(2, new Double[] { 110.0, 300.0, 200.0 });
hm1.put(3, new Double[] { 120.0, 400.0, 300.0 });
hm1.put(4, new Double[] { 130.0, 500.0 });
hm1.put(5, new Double[] { 140.0, 600.0 });
Set<Map.Entry<Integer, Double[]>> set = new HashSet<Map.Entry<Integer, Double[]>>();
for()
set.add();
}
}
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class HashMap_01 {
public static void main(String args[]) {
HashMap<Integer, Double[]> hm1 = new HashMap<Integer, Double[]>();
hm1.put(1, new Double[] { 100.0, 200.0 });
hm1.put(2, new Double[] { 110.0, 300.0, 200.0 });
hm1.put(3, new Double[] { 120.0, 400.0, 300.0 });
hm1.put(4, new Double[] { 130.0, 500.0 });
hm1.put(5, new Double[] { 140.0, 600.0 });
Set<Map.Entry<Integer, Double[]>> set = new HashSet<Map.Entry<Integer, Double[]>>();
Iterator<Map.Entry<Integer, Double[]>> iter = hm1.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry<Integer, Double[]> entry = (Map.Entry<Integer, Double[]>) iter
.next();
if (entry.getValue()[0] > 100)
set.add(entry);
}
for (Map.Entry<Integer, Double[]> e : set) {
System.out.println(e.getKey() + " " + e.getValue()[0] + " "
+ e.getValue()[1]);
}
}
}
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class HashMap_02 {
public static void main(String args[]) {
ArrayList<Double[]> hm1 = new ArrayList<Double[]>();
hm1.add(new Double[] { 100.0, 200.0 });
hm1.add(new Double[] { 110.0, 300.0, 200.0 });
hm1.add(new Double[] { 120.0, 400.0, 300.0 });
hm1.add(new Double[] { 130.0, 500.0 });
hm1.add(new Double[] { 140.0, 600.0 });
Set<Double[]> set = new HashSet<Double[]>();
Iterator<Double[]> iter = hm1.iterator();
while (iter.hasNext()) {
if (iter.next()[0] > 100)
set.add(iter.next());
}
for (Double[] e : set) {
for (int i = 0; i < e.length; i++)
System.out.print(e[i] + " ");
System.out.println("");
}
}
}
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class ArrayList_02 {
public static void main(String args[]) {
ArrayList<Double[]> hm1 = new ArrayList<Double[]>();
hm1.add(new Double[] { 100.0, 200.0 });
hm1.add(new Double[] { 110.0, 300.0, 200.0 });
hm1.add(new Double[] { 120.0, 400.0, 300.0 });
hm1.add(new Double[] { 130.0, 500.0 });
hm1.add(new Double[] { 140.0, 600.0 });
ArrayList<Double[]> set = new ArrayList<Double[]>();
Iterator<Double[]> iter = hm1.iterator();
while (iter.hasNext()) {
Double[] entry = iter.next();
if (entry[0] > 100)
set.add(entry);
}
for (Double[] e : set) {
for (int i = 0; i < e.length; i++)
System.out.print(e[i] + " ");
System.out.println("");
}
}
}
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayList_03 {
public static void main(String args[]) {
ArrayList<Double[]> hm1 = new ArrayList<Double[]>();
hm1.add(new Double[] { 100.0, 200.0 });
hm1.add(new Double[] { 110.0, 300.0, 200.0 });
hm1.add(new Double[] { 120.0, 400.0, 300.0 });
hm1.add(new Double[] { 130.0, 500.0 });
hm1.add(new Double[] { 140.0, 600.0 });
ArrayList<Double[]> set = new ArrayList<Double[]>();
Iterator<Double[]> iter = hm1.iterator();
while (iter.hasNext()) {
Double[] entry = iter.next();
if (entry[0] > 100)
set.add(entry);
}
iter = set.iterator();
while (iter.hasNext()) {
Double[] e = iter.next();
for (int i = 0; i < e.length; i++)
System.out.print(e[i] + " ");
System.out.println("");
}
}
}