首页 > 解决方案 > 我没有得到这样的元素异常:运行我的项目时找不到文件

问题描述

在注册方法出现错误请有人调试它。我已经尝试了所有方法,但仍然出现此异常:未找到文件。我想我已经正确地完成了这个功能。函数应该获得数学 101、英语 101 等课程并相应地获得学费。

package studentDatabaseApp;

import java.util.Scanner;

public class Student {

    private String firstName;
    private String lastName; 
    private int gradeYear = 0;
    private String studentID;
    private String courses = null;
    private static int courseCost = 600;
    private int tutionBalance = 0;
    private static int id = 1000;

    //Constructor to enter student name and year for each student
    public Student() {
        Scanner scan = new Scanner(System.in);
        System.out.print("Enter Student First Name: ");
        this.firstName = scan.nextLine();
        System.out.print("Enter Student Last Name: ");
        this.lastName = scan.nextLine();
        System.out.print("1 - Freshmen\n2 - Sophmore\n3 - Junior\n4 - Senior\nEnter Student Grade Year: ");
        this.gradeYear = scan.nextInt();
        scan.close();
        //Setting student id
        setStudentID();
        System.out.println("STUDENT CREATED: "+ firstName +" "+ lastName +" "+"\nGRADE LEVEL:"+" "+gradeYear+ " "
        +"\nSTUDENT ID: "+ studentID);                      
    }
    //Unique id and student grade level

    private void setStudentID() {
        id++;
        this.studentID = gradeYear + "" + id;
    }

    //Create courses so student can enroll
    public void enroll() {
        do {            
            System.out.print("Enter course to enroll (Q to Quit): ");
            Scanner in = new Scanner(System.in);
            String course = in.nextLine();
            if(!course.equals("Q")) {
                courses = courses + "\n" + course;
                tutionBalance = tutionBalance + courseCost;
            } else {
                System.out.println("Break");
                break;
            }
            in.close();         
        } while(1 != 0);

        System.out.println("ENROLLED IN: "+ courses);
        System.out.println("TUTION BALANCE: "+ tutionBalance);
    }

    //Student should able to view their balance and pay the tution 

    //Student status with their name, ID, course enrolled and balance

}

标签: java

解决方案


当您第一次关闭扫描仪时,您也会关闭,因此当您第二次System.in尝试访问时,您会遇到异常,请尝试重构您的代码,以便您在课堂上只使用一个扫描仪。System.inenroll()


推荐阅读