Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.util.ArrayList;
- import java.util.Scanner;
- public class Main {
- private static ArrayList<vehicle> fcatalogue = new ArrayList<>();
- private static File output;
- public static void main(String[] args) {
- Scanner in = new Scanner(System.in);
- askfile(in);
- showmenu();
- userselects(in);
- }private static void showmenu() {
- System.out.println("Please make your choice:");
- System.out.println("\t 1 - Show the entire Mobility4you catalogue");
- System.out.println("\t 2 - Add new electric car");
- System.out.println("\t 3 - Add new gas-powered car");
- System.out.println("\t 4 - Add a new hybrid car");
- System.out.println("\t 5 - Show the entire Mobility4you catalogue sorted by car-type");
- System.out.println("\t 6 - Show the entire Mobility4you catalogue sorted by brand (alphabetically)");
- System.out.println("\t 7 - Write to file");
- System.out.println("\t 8 - Stop the program");
- }private static void userselects(Scanner in) {
- switch(in.next()) {
- case "1":
- showfile();
- break;
- case "2":
- addelcar(in);
- break;
- case "3":
- addgascar(in);
- break;
- case "4":
- addhybcar(in);
- break;
- case "5":
- showbycar();
- break;
- case "6":
- System.out.println("6");
- break;
- case "7":
- System.out.println("7");
- break;
- case "8":
- System.out.println("8");
- break;
- default:
- System.out.println("Please make a valid choice.");
- userselects(in);
- }
- }private static void askfile(Scanner ask) {
- try {
- System.out.println("Please provide us with a valid file name");
- File file = new File(ask.next());
- Scanner read = new Scanner(file);
- while(read.hasNextLine()){
- String x = read.nextLine();
- String[] list = x.split(",\\s");
- switch(list[0].split("\\s")[0]) {
- case "ELECTRIC_CAR":
- Electric_car elcar = new Electric_car(list[0].split("\\s")[1], list[1], list[2], list[3], list[4]);
- fcatalogue.add(elcar);
- break;
- case "GAS_CAR":
- Gas_car gascar = new Gas_car(list[0].split("\\s")[1], list[1], list[2], list[3], list[4]);
- fcatalogue.add(gascar);
- break;
- case "HYBRID_CAR":
- Hybrid_car hybcar = new Hybrid_car(list[0].split("\\s")[1], list[1], list[2], list[3], list[4], list[5]);
- fcatalogue.add(hybcar);
- break;
- default:
- System.out.println("Mobility4you doesn't support this kind of vehicle yet");
- }
- }read.close();
- output=file;
- }catch(FileNotFoundException e) {
- System.out.println("Something weird has occurred, please try again.");
- askfile(ask);
- }
- }private static void showfile() {
- try {
- Scanner out = new Scanner(output);
- while(out.hasNextLine()) {
- System.out.println(out.nextLine());
- }out.close();
- }catch(FileNotFoundException e) {
- System.out.println("error");
- }
- }private synchronized static void addelcar(Scanner in) {
- ArrayList<String> data = askgendata(in);
- data.add(askcapacity(in));
- fcatalogue.add(new Electric_car(data.get(0), data.get(1), data.get(2), data.get(3), data.get(4)));
- }private synchronized static void addgascar(Scanner in) {
- ArrayList<String> data = askgendata(in);
- data.add(askdisplacement(in));
- fcatalogue.add(new Gas_car(data.get(0), data.get(1), data.get(2), data.get(3), data.get(4)));
- }private synchronized static void addhybcar(Scanner in) {
- ArrayList<String> data = askgendata(in);
- data.add(askcapacity(in));
- data.add(askdisplacement(in));
- fcatalogue.add(new Hybrid_car(data.get(0), data.get(1), data.get(2), data.get(3), data.get(4), data.get(5)));
- }private static ArrayList<String> askgendata(Scanner input) {
- ArrayList<String> data = new ArrayList<>();
- System.out.println("Please provide us with the brandname");
- data.add(input.next());
- System.out.println("Please provide us with the model name");
- data.add(input.next());
- System.out.println("Please provide us with the engine power");
- data.add(input.next());
- System.out.println("Please provide us with the price");
- data.add(input.next());
- return data;
- }private static String askdisplacement(Scanner in) {
- System.out.println("Please provide us the engine displacement.");
- return in.next();
- }private static String askcapacity(Scanner in) {
- System.out.println("Please provide us the capacity of the battery");
- return in.next();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement