输入哈希映射时的空指针验证 import java.util.HashMap; 导入java.util.Scanner; 导入java.io.*; 公共类可填充{ 静态扫描仪控制台=新扫描仪(System.in); 静态扫描仪输入=新扫描仪(System.in); 静态串基准品位; 静态弦乐; 静态HashMap等级; 静态HashMap教师; 静态双GPA; 静态int-ID; 静态字符串状态; 静态整数; 静态文件html; 公共静态void main(字符串[]args)引发IOException{ System.out.println(“全名?”); fullname=console.nextLine(); System.out.println(“所修课程数?”); Number=console.nextInt(); System.out.println(“请输入随 有关职系);; 对于(int i=0;i

输入哈希映射时的空指针验证 import java.util.HashMap; 导入java.util.Scanner; 导入java.io.*; 公共类可填充{ 静态扫描仪控制台=新扫描仪(System.in); 静态扫描仪输入=新扫描仪(System.in); 静态串基准品位; 静态弦乐; 静态HashMap等级; 静态HashMap教师; 静态双GPA; 静态int-ID; 静态字符串状态; 静态整数; 静态文件html; 公共静态void main(字符串[]args)引发IOException{ System.out.println(“全名?”); fullname=console.nextLine(); System.out.println(“所修课程数?”); Number=console.nextInt(); System.out.println(“请输入随 有关职系);; 对于(int i=0;i,java,nullpointerexception,hashmap,Java,Nullpointerexception,Hashmap,在你尝试与成绩互动之前,你需要在某个地方有这条线: grades=newhashmap(); 我会把它放在主方法的开头或第一次声明变量的时候。对于所有其他尚未初始化的类级变量,如讲师,都是这样 这是因为您声明但未设置为初始值的任何对象的值都将为null 如果试图使用值为null的对象的方法或成员,则会得到NullPointerException 希望这会有帮助!因为等级是空的(未初始化类字段的默认值)。你期望什么?顺便说一下,变量不一定是静态的。但是你需要初始化它们 import java.u

在你尝试与成绩互动之前,你需要在某个地方有这条线:

grades=newhashmap();

我会把它放在主方法的开头或第一次声明变量的时候。对于所有其他尚未初始化的类级变量,如讲师,都是这样

这是因为您声明但未设置为初始值的任何对象的值都将为
null

如果试图使用值为
null
的对象的方法或成员,则会得到
NullPointerException


希望这会有帮助!

因为
等级
空的
(未初始化类字段的默认值)。你期望什么?顺便说一下,变量不一定是静态的。但是你需要初始化它们
 import java.util.HashMap;
 import java.util.Scanner;
 import java.io.*;

 public class FillATable {
 static Scanner console = new Scanner(System.in);
 static Scanner input = new Scanner(System.in);
 static String BaseGrades;
 static String BaseInstructor;
 static HashMap<String, Integer> Grades;
 static HashMap<String, String> Instructor;
 static double GPA;
 static int ID;
 static String status;
 static int Number;
 static File html;

    public static void main(String[] args) throws IOException {
    System.out.println("Full Name ?");
    fullname = console.nextLine();

    System.out.println("Number of courses taken ?");
    Number = console.nextInt();
    System.out.println("Please input the courses taken along with the 
    respective grades ");
    for (int i = 0; i <= Number; i++) {
        Grades.put(console.next(), console.nextInt());
    }

    System.out.println("Please input the courses taken along with the 
    respective instructors");
    for (int i = 0; i < Number; i++) {
        Instructor.put(console.nextLine(), console.nextLine());
    }

    System.out.println("GPA ?");
    GPA = input.nextDouble();

    System.out.println("ID number ?");
    ID = input.nextInt();

    for (String course : Instructor.keySet()) {
        String value = Instructor.get(course);
        BaseInstructor = BaseInstructor + "( " + course + "," + value + ")";

    }
    for (String course : Grades.keySet()) {
        Integer value = Grades.get(course);
        BaseGrades = BaseGrades + "( " + course + "," + value + ")"

      }