Java 我已经编写了这段代码,但它确实输出了与sam键值对关联的值?请告诉我如何获得山姆的价值? publicstaticvoidmain(字符串[]argh){ Map myMap=newhashmap(); 扫描仪输入=新扫描仪(系统输入); int n=in.nextInt(); String name=“sam”; int phone=0; 对于(int i=0;i
我已经编写了这段代码,但它确实输出了与sam键值对关联的值 请告诉我如何获得sam的价值?此处:Java 我已经编写了这段代码,但它确实输出了与sam键值对关联的值?请告诉我如何获得山姆的价值? publicstaticvoidmain(字符串[]argh){ Map myMap=newhashmap(); 扫描仪输入=新扫描仪(系统输入); int n=in.nextInt(); String name=“sam”; int phone=0; 对于(int i=0;i,java,Java,我已经编写了这段代码,但它确实输出了与sam键值对关联的值 请告诉我如何获得sam的价值?此处: public static void main(String[] argh) { Map<String, Integer> myMap = new HashMap<String, Integer>(); Scanner in = new Scanner(System.in); int n = in.nextInt(); String name = "sam";
public static void main(String[] argh) {
Map<String, Integer> myMap = new HashMap<String, Integer>();
Scanner in = new Scanner(System.in);
int n = in.nextInt();
String name = "sam";
int phone = 0;
for (int i = 0; i < n; i++) {
name = in.next();
phone = in.nextInt();
myMap.put(name, phone);
while (in.hasNext()) {
String s = in.next();
if (myMap.containsKey(s)) {
System.out.println(name + "=" + phone);
} else {
System.out.println("Not found");
}
}
in.close();
}
}
您正在检查地图是否包含s
键,然后打印name
和phone
变量中的任何内容
而是实际获取与s
关联的电话号码:
if(myMap.containsKey(s)){
System.out.println(name+"="+ phone );
}
欢迎来到堆栈溢出!看起来您需要学习使用调试器。请随便吃点。如果你以后还有问题,请随时回答一个更具体的问题。你到底想实现什么?你的输入是什么?3 sam 99912222 tom 1112222 harry 12299933 sam edward harry为什么要输入多个姓名电话对,尽管你的代码显然在输入第一对后立即搜索姓名?谢谢,我知道了,这就是为什么它总是显示出来的原因harry作为输出
if(myMap.containsKey(s)){
System.out.println(s+"="+ myMap.get(s) );
}