Question: My code keeps getting the error: Invalid student data: 1 0 0 Exception in thread main java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
My code keeps getting the error: Invalid student data:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index out of bounds for length
at UniversitySystem.readUniversityDataUniversitySystemjava:
at UniversitySystem.mainUniversitySystemjava:
Here is my code:
import java.ioBufferedReader;
import java.ioFileReader;
import java.ioIOException;
import java.util.ArrayList;
public class UniversitySystem
private ArrayList students;
private ArrayList universities;
public UniversitySystem
students new ArrayList;
universities new ArrayList;
public void readStudentDataString filename
try BufferedReader reader new BufferedReadernew FileReaderfilename
String line;
while line reader.readLine null
String data line.split;
if datalength Ensure the array has enough elements
Student student new Student
datatrim datatrim datatrim Trim whitespace from each field
Integer.parseIntdatatrim datatrimcharAt
datatrim datatrim datatrim datatrim datatrim
datatrimcharAt datatrimcharAt datatrimcharAt
;
students.addstudent;
else
System.err.printlnInvalid student data: line;
catch IOException e
System.err.printlnError reading student data from file: egetMessage;
catch NumberFormatException e
System.err.printlnError parsing student age: egetMessage;
catch Exception e
System.err.printlnAn unexpected error occurred: egetMessage;
public void readUniversityDataString filename throws IOException
BufferedReader reader new BufferedReadernew FileReaderfilename;
String line;
while line reader.readLine null
String data line.split;
University university new University
data data data data data
Double.parseDoubledata Double.parseDoubledata Double.parseDoubledata
Double.parseDoubledata Double.parseDoubledata Double.parseDoubledata
Double.parseDoubledata Double.parseDoubledata Double.parseDoubledata
Double.parseDoubledata Double.parseDoubledata
;
universities.adduniversity;
reader.close;
public void generateReports
for University university : universities
System.out.printlnUniversity Name: university.getName;
System.out.printlnStudents:;
for Student student : students
if studentgetUniversityequalsuniversitygetName
System.out.printlnstudent;
System.out.printlnMeal Plan Information:";
System.out.printlnMeal Plan A: $ university.getStudentCostMealPlanA;
System.out.printlnMeal Plan B: $ university.getStudentCostMealPlanA;
System.out.printlnMeal Plan C: $ university.getStudentCostMealPlanA;
public static void mainString args throws IOException
UniversitySystem system new UniversitySystem;
system.readStudentDataC:UsersSarahDownloadsStudentFiletxt;
system.readUniversityDataC:UsersSarahDownloadsUniversitiestxt;
system.generateReports;
This is the universities txt file:
Ohio State University, South
StColumbus, OH
University of Washington, Northeast
Ave, Seattle, WA
University of Louisiana, University
Avenue, Monroe, LA
Oklahoma State University, Greenwood
Ave, Tulsa, OK
George Mason University, University
Drive, Fairfax,Virg
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
