This repository contains a Java FX GUI application for managing a World Rally Cross Championship. The system supports adding, deleting, updating driver details, viewing standings, simulating races, and saving/loading data.
The objective is to create a GUI application for World Rally Cross Championship management using Java and OOP concepts.
When launched, the system provides the following functions via a Java FX GUI:
- Add Driver Details
- Delete Driver Details
- Update Driver Details
- View Rally Cross Standings Table
- Simulate a Random Race
- View Race Table Sorted by Date
- Save Data to a Text File
- Load Data from a Saved Text File
- Exit the Program
Allows the user to enter the following driver details:
- Name
- Age
- Team
- Car
- Current points
Example:
Travis Pastrana, 38, Subaru Motorsports, Subaru WRX STi, 10
Allows the user to delete a driver by searching by name.
Allows the user to update driver details by searching by name.
Displays the championship standings ordered by points in descending order. The table is formatted neatly with all details.
Simulates a random race and assigns points to each driver accordingly:
- 1st place: 10 points
- 2nd place: 7 points
- 3rd place: 5 points
Race details stored include:
- Date of the race
- Location of the race (Nyirád, Höljes, Montalegre, Barcelona, Rīga, Norway)
- Each driver’s position and points
Displays all races in the championship sorted by date using a custom sorting algorithm.
Saves the current data to a text file in a format that can be easily retrieved. No database usage is allowed for storing data.
Loads the current data from a text file to enable resume capabilities.
- HelloApplication.java: The main Java file containing the implementation of the championship management system GUI.
-
Clone the repository:
git clone https://github.com/nisal2002/ChampionshipManagement_Java.git
-
Navigate to the project directory:
cd ChampionshipManagement_Java
-
Compile and run the Java program:
javac HelloApplication.java java HelloApplication
The program will launch a GUI with options to add, delete, update, view standings, simulate races, view race table, save data, load data, and exit the program.
- Java
- Java FX
- Author - Initial work
This project is licensed under the MIT License - see the LICENSE file for details.