兄弟 map.put(Integer.parseInt(cha[1]),cha[0]); 这行错了 还有你这个根本打印不出来的,因为readLine()是阻塞时方法啊,应该这样。。
import java.io.*;
import java.util.*;
import java.util.Map.Entry;
/*
* 在控制台输入3个学生(姓名,学号)姓名可以重复但是学号是唯一的,
* 将输入的这3个学生存放到集合里然后在控制台打印出来并且修改其中任意一个学号对应的学生姓名
*/
public class Test {
public static void main(String[] args) throws Exception{
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
Map<Integer,String> map = new HashMap<Integer,String>();
String str =null;
while((str=buf.readLine())!=null){
String[] cha = str.split(",");
map.put(Integer.parseInt(cha[0]),cha[1]);
System.out.println(map);
Set<Entry<Integer, String>> set = map.entrySet();
Iterator<Map.Entry<Integer, String>> it = set.iterator();
while(it.hasNext()){
Map.Entry<Integer, String> s = it.next();
int inte = s.getKey();
String ss =s.getValue();
System.out.println(inte+" "+ss);
}
}
}
}
|