import java.util.*;
class StoreName {
public static void main(String[] args) {
HashMap<String, Integer> map = new HashMap<String, Integer>();
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
String name = sc.nextLine();
int age = sc.nextInt();
map.put(name, age);
}
for (String key : map.keySet())
System.out.println(key + "=" + map.get(key));
}
}
当我从nextInt()获取输入时,扫描器会抛出InputMismatchException
异常,但是如果我从nextLine()获取输入,然后将其解析为int,那么我的代码会正常运行。
如果可以将字符串输入解析为任何类型,为什么还要使用nextInt()或nextDouble()。
sc.nextint()
不读取整行。
假设您输入
John
20
Dan
24
现在让我们看看每个扫描仪调用将返回什么:
String name=sc.nextLine(); // "John"
int age=sc.nextInt(); // 20
String name=sc.nextLine(); // "" (the end of the second line)
int age=sc.nextInt(); // "Dan" - oops, this is not a number - InputMismatchException
for(int i=0;i<5;i++)
{
String name=sc.nextLine();
int age=sc.nextInt();
sc.nextLine(); // add this
map.put(name,age);
}
String name=sc.nextLine(); // "John"
int age=sc.nextInt(); // 20
sc.nextLine(); // "" (the end of the second line)
String name=sc.nextLine(); // "Dan"
int age=sc.nextInt(); // 24
sc.nextLine(); // "" (the end of the fourth line)
我在线程“main”java中遇到异常。错误:未解析编译。 我做错了什么? 线程“main”中出现异常: java.lang.错误:未解决的编译问题: 对于类型在
我从GitHub克隆了我的项目,现在我无法运行我的项目。 我收到以下错误: 知道是什么导致了这个错误吗? 编辑 我检查了这个问题Intellij在我发布到这里之前突然抛出ClassNotFoundException,它没有给我任何解决方案...为什么要将我的问题标记为重复,因为那个问题不能解决我的问题?
我得到了这个错误: 线程“main”Java.lang.NosuchFielderRror:calificacion.main处的num1异常(problema_3.Java:17) 在这个简单的终端Java程序上键入第一个值后: 另一方面,这一个运行良好,我使用相同的输入法在这两个: 提前道谢。
每当我运行这个函数时,函数与.nextint()中的
但是当我运行它时,我得到以下错误: 线程“main”java.lang.ClassNotFoundException:org.h2.java.net.URLClassLoader$1处的Driver.运行(未知源)java.net.URLClassLoader$1处的运行(未知源)java.security.AccessController.doprivileged(本机方法)java.net.U
代码重构后,我在尝试编译Maven项目时遇到以下错误: 我尝试删除文件夹但问题未解决。您知道如何解决此问题吗?