51,410
社区成员
发帖
与我相关
我的任务
分享
import java.util.HashMap;
import java.util.Map;
public class MapTest {
public static void main(String[ ] args) {
A a1 = new A(1);
A a2 = new A(2);
Map<Integer , A> map = new HashMap<Integer , A>();
map.put(1 , a1);
map.put(2 , a2);
System.out.println(map);
A a3 = map.get(1);
a3.setX(0);// 修改有效
System.out.println(map);
Map<Integer , String> map2 = new HashMap<Integer , String>();
map2.put(1 , "A");
map2.put(2 , "B");
System.out.println(map2);
String str = map2.get(1);
str = "C";// String类型比较特殊,修改无效
str = str + str;
System.out.println(map2);
B b1 = new B("D");
B b2 = new B("E");
Map<Integer , B> map3 = new HashMap<Integer , B>();
map3.put(1 , b1);
map3.put(2 , b2);
System.out.println(map3);
B b3 = map3.get(1);
b3.setB("F");// 这样就有效了
System.out.println(map3);
}
}
class A {
int x;
public A(int x) {
super();
this.x = x;
}
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
@Override
public String toString() {
return "A [x=" + x + "]";
}
}
class B {
String b;
public B(String b) {
super();
this.b = b;
}
public String getB() {
return b;
}
public void setB(String b) {
this.b = b;
}
@Override
public String toString() {
return "B [b=" + b + "]";
}
}