java----Map

来源:互联网 发布:判断闰年的c语言程序 编辑:程序博客网 时间:2024/05/17 09:29
/*
* HashMap:
* 1.key使用Set来存放的,不可重复,value使用Collection来存放的,可重复
* 一个key-value对,是一个Entry,所有的Entry使用Set存放的,也是不可重复的
* 2.向HashMap中添加元素时,会调用key所在类的equals()方法,判断两个key是否相同

*/
//@Test
public void test(){
Map map = new HashMap();
map.put("AA", 123);
map.put("BB", 456);
//map.put("BB", 45);
map.put(123, "CC");
map.put(null, null);
map.put(new Person("DD",23), 89);
map.put(new Person("DD",23), 87);
System.out.println(map.size());
System.out.println(map);
map.remove("BB");
System.out.println(map);
Object value = map.get(123);
System.out.println(value);

}

//@Test
public void test2(){
Map map = new HashMap();
map.put("AA", 123);
map.put("BB", 456);
//map.put("BB", 45);
map.put(123, "CC");
map.put(null, null);
map.put(new Person("DD",23), 89);
map.put(new Person("DD",23), 87);

//1.遍历key键
Set set = map.keySet();
for (Object object : set) {
System.out.println(object);
}
System.out.println();
//2.遍历value集合
Collection values = map.values();
Iterator i = values.iterator();
while (i.hasNext()) {
System.out.println(i.next());

}
System.out.println();
//3.如何遍历key-value对
//方式一:
Set set1 = map.keySet();
for (Object object : set1) {
System.out.println(object + "-->"+map.get(object));
}
System.out.println();
//方式二:
Set set2 = map.entrySet();
for (Object object : set2) {
Map.Entry entry = (Entry) object;
System.out.println(entry.getKey()+"-->"+entry.getValue());
}

}
//@Test
public void test3(){
Map map = new LinkedHashMap();
map.put("AA", 123);
map.put("BB", 456);
//map.put("BB", 45);
map.put(123, "CC");
map.put(null, null);
map.put(new Person("DD",23), 89);
map.put(new Person("DD",23), 87);

Set set = map.entrySet();
for (Object object : set) {
System.out.println(object);
}

}
//@Test
public void test4(){
Map map = new TreeMap();
map.put(new Person("AA",23),89);
map.put(new Person("MM",22),79);
map.put(new Person("GG",23),99);
map.put(new Person("JJ",13),69);

Set set = map.keySet();
for (Object object : set) {
System.out.println(object+"-->"+map.get(object));
}


}

//@Test
public void test5(){
Comparator com = new Comparator() {


@Override
public int compare(Object o1, Object o2) {
if(o1 instanceof Customer && o2 instanceof Customer){
Customer c1 = (Customer)o1;
Customer c2 = (Customer)o2;
int i = c1.getName().compareTo(c2.getName());
if( i ==0 ){
return c1.getName().compareTo(c2.getName());
}
return i;
}
return 0;
}
};

TreeMap map = new TreeMap(com);
map.put(new Person("AA",23),89);
map.put(new Person("MM",22),79);
map.put(new Person("GG",23),99);
map.put(new Person("JJ",13),69);

Set set = map.keySet();
for (Object o : set) {
System.out.println(o);
}


}
@Test
public void test6() throws FileNotFoundException, IOException{
//使用Properties处理属性文件
Properties p = new Properties();
p.load(new FileInputStream(new File("jdbc.properties")));
String user = p.getProperty("user");
System.out.println(user);
}
原创粉丝点击