Hey everyone,
I am having trouble with this Train Simulation that I am working on for school. I don't know what I have done wrong. I am not getting any errors but the output is just wrong. I am having problems with how many stations are being visited and also the station names. The station name that is being printed is [Ljava.lang.String;@27716f4 and I don't know why.
You can find the main class MainClass and support class SubwayTrain
--> here.
If anyone can help I would greatly appreciate it.
Test data I am using
Number of Stations: 3
Home Station Number: 33
Maximum Capacity: 10
Top comments (4)
Station name printing worked for me but you should change
borrowedInput.next().toUpperCase().charAt(0)toborrowedInput.nextInt()when you are reading integer value from user. I would create a small helper method to read the valid integer input so I wouldn't have to implement validity check every time I read integer.Yes I fixed that problem and are you finding "borrowedInput.next()" in a validation method in MainClass? If so this is not validating an integer. It is to validate the character input from the user when they are choosing a menu option.
You are using
borrowedInput.next().toUpperCase().charAt(0)method to read user input even when you are asking an integer value like invalidateMaximumCapacityandvalidateNumberOfStationsmethods. In these cases you should useborrowedInput.nextInt()instead. UsingborrowedInput.next().toUpperCase().charAt(0)method when you are asking a single character, like in main menu, is fine.Life saver!!! I didn’t realize I was doing that. Omg thank you. I thought I already fixed that a while ago. Well I guess that’s what you get when you copy and try to change one of your components into something else. Lol