HashMap数据读取问题,求教!(这次是个新的问题,上个帖子时间太长,无法编辑了)
上一个问题,感谢pywepe的回答,谢谢这回,我写了3个类
public class Map{} 用于存储数据,里面有put()方法和get()方法
public class Test {} 用于输入数据
public class Enter {} 用于读取数据,并输出
现在的问题是,我添加完数据后,在Test {} 里直接调用get()方法能把数据全输出
但是我使用Enter {} 输出数据就全为null,
自己分析可能是 public class Enter {
Map m = new Map(); //这里出了问题,new 出一个新的Map
........
}
现在我想在别的类里读取原来的数据,Enter {}类应该怎么写?
程序代码:import java.util.*;
public class Map{
private HashMap<String, String> map;
public Map(){
this.map=new HashMap<String,String>();
}
public void put(String key,String value){
this.map.put(key,value);
}
public void get(){
Set keySet = map.keySet();
Iterator<String> it= keySet.iterator();
while(it.hasNext()) {
String key = it.next();
String val = map.get(key);
System.out.println(key + " " + val);
}
}
}
程序代码:import java.util.*;
public class Test {
public static void main(String[] args) {
Map m = new Map();
Enter en = new Enter();
Scanner sc = new Scanner(System.in);
for(int i = 0 ; i < 3 ; i++){
String key = sc.next();
String val = sc.next();
m.put(key,val);
}
m.get();
en.enter();
}
}
程序代码:public class Enter {
Map m = new Map();
public void enter(){
m.get();
}
}









