Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
58
Добавлен:
18.12.2017
Размер:
6.85 Кб
Скачать
package lab2_java;

import java.util.Date;
import java.util.Random;
import java.util.Scanner;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Map;
import java.util.HashMap;

import java.io.*;
import java.awt.*;
import java.awt.geom.*;

import javax.swing.*;

public class main {

public static Race race = new Race();

public static Thread car1 = new LabCar(1,50);
public static Thread car2 = new LabCar(2,50);

public static ClientForm LogIn = new ClientForm(1);
public static ClientForm Chat = new ClientForm(2);

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Выберите номер задания:\n"
+ "2 - Л/р №2\n3 - Л/р №3\n4 - Л/р №4\n5 - Л/р №5\n6 - Л/р №6");
int task = input.nextInt();

if (task == 2){
System.out.println("Введите кол-во авто, которые вы хотите создать: ");
int carCount = input.nextInt();
ArrayList<Car> cars = new ArrayList<Car>();

System.out.println();
for (int i = 0; i < carCount; ++i){
System.out.println("Введите название модели авто: ");
String model = new String(input.next());
System.out.println("Введите скорость авто: ");
int speed = input.nextInt();
System.out.println("Введите название радиостанции: ");
Radio radio = new Radio(input.next());
System.out.println("Включить радио? y/n");
char ans = input.next().charAt(0);
if(ans == 'y' || ans == 'Y') {
radio.PlayTunes();
}

cars.add(new Car(model, speed, radio));
System.out.println();
}

System.out.println("\nВведите кол-во грузовиков, которые вы хотите создать: ");
int truckCount = input.nextInt();
ArrayList<Truck> trucks = new ArrayList<Truck>();

System.out.println();
for (int i = 0; i < truckCount; ++i) {
System.out.println("Введите название модели грузовика: ");
String model = new String (input.next());
System.out.println("Введите скорость грузовика: ");
int speed = input.nextInt();
System.out.println("Введите массу грузовика: ");
int weight = input.nextInt();
System.out.println("Введите высоту грузовика: ");
int height = input.nextInt();
System.out.println("Введите название радиостанции: ");
Radio radio = new Radio(input.next());
System.out.println("Включить радио? y/n");
char ans = input.next().charAt(0);
if(ans == 'y' || ans == 'Y') {
radio.PlayTunes();
}

trucks.add(new Truck(model, speed, radio, weight, height));
System.out.println();
}

System.out.println();
char repeat = 'n';
do {
System.out.println("\nCоздание поста ДПС!");
System.out.println("Введите скоростное ограничение: ");
int speed_limit = input.nextInt();
System.out.println("Введите ограничение по массе: ");
int weight_limit = input.nextInt();
System.out.println("Введите ограничение по высоте: ");
int height_limit = input.nextInt();
Post DPS = new Post(speed_limit, weight_limit, height_limit);

System.out.println("\nПроверка автомобилей на посте ДПС!");
for (Car car : cars) {
System.out.println("Автомобиль: ");
System.out.println(car.toStr_Car());
DPS.Pass(car);
}

System.out.println("\nПроверка грузовиков на посте ДПС!");
for (Truck truck : trucks) {
System.out.println("Грузовик: ");
System.out.println(truck.toStr_Truck());
DPS.Pass(truck);
}

System.out.println("\nПовторить проверку для другого поста ДПС? y/n");
repeat = input.next().charAt(0);
}while(repeat == 'y' || repeat == 'Y');

input.close();
}

if (task == 3) {
Log.TimePrint("Старт программы");
String fileName = "BD.txt";
ArrayList<String> text = FileWorker.read(fileName);
Log.TimePrint("Чтение базы данных");

System.out.println("База данных: ");
for(String temp : text) {
System.out.println(temp);
}
System.out.println("_________________________");

ArrayList<Car> cars = FileWorker.fileParseCar(text);
for (Car car : cars) {
System.out.println(car.toStr_Car());
}

ArrayList<Truck> trucks = FileWorker.fileParseTruck(text);
for (Truck truck : trucks) {
System.out.println(truck.toStr_Truck());
}

cars.add(new Car("new", 150, new Radio()));
StringBuilder sb = new StringBuilder("[Cars]\n");
for (Car car : cars) {
sb.append(car.toStr_Car());
}
sb.append("[Truck]\n");
for (Truck truck : trucks) {
sb.append(truck.toStr_Truck());
}
String newbd = sb.toString();
Log.TimePrint("Запись в БД");
FileWorker.write(fileName, newbd);

Log.TimePrint("Завершение программы");
}

if (task == 4){
Log.TimePrint("Start Program: ");

Log.NoTimePrint("ArrayList\n");
ArrayList<Car> arr10 = Car.Random_ArrayList(10);
ArrayList<Car> arr100 = Car.Random_ArrayList(100);
ArrayList<Car> arr1000 = Car.Random_ArrayList(1000);
ArrayList<Car> arr10000 = Car.Random_ArrayList(10000);
ArrayList<Car> arr100000 = Car.Random_ArrayList(100000);

Log.NoTimePrint("LinkedList\n");
LinkedList<Car> llist10 = Car.Random_LinkedList(10);
LinkedList<Car> llist100 = Car.Random_LinkedList(100);
LinkedList<Car> llist1000 = Car.Random_LinkedList(1000);
LinkedList<Car> llist10000 = Car.Random_LinkedList(10000);
LinkedList<Car> llist100000 = Car.Random_LinkedList(100000);

Log.TimePrint("Finish Program: ");

}

if (task == 5) {
ArrayList <String> text = FileWorker.read("Log.txt");
Map <String, Integer> logData = FileWorker.fileParseLog(text);

EventQueue.invokeLater(new Runnable() {
public void run() {
new LabFrame(logData);
}
});
}

if (task == 6) {
LabInterface GUI = new LabInterface();
GUI.setVisible(true);
}

if (task == 7) {
EventQueue.invokeLater(new Runnable() {
public void run() {
race.setVisible(true);
car1.start();
car2.start();

}
});
}

if (task == 8) {

LogIn.setVisible(true);

EventQueue.invokeLater(new Runnable() {
public void run() {


}
});
}
}
}




Соседние файлы в папке lab2_java