Добавил:
nyan
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Александр Б. / lab2_java / src / lab2_java / Car
.java package lab2_java;
import java.util.Date;
import java.util.Random;
import java.util.ArrayList;
import java.util.LinkedList;
enum Moving { moving_to_post, passed, not_passed }
public class Car {
private String model;
private int speed;
private Radio radio;
private Moving moving;
Car(){
this.model = "Unknown";
this.speed = 50;
this.radio = new Radio();
this.moving = Moving.moving_to_post;
}
Car(String model, int speed, Radio radio){
this.model = model;
this.speed = speed;
this.radio = radio;
this.moving = Moving.moving_to_post;
}
int getSpeed(){
return this.speed;
}
void Move(Moving moving){
this.moving = moving;
}
void Random(){
Random random = new Random();
this.model = "car" + random.nextInt(100000);
this.speed = random.nextInt(300);
this.radio = new Radio(random.nextBoolean(), "rad" + random.nextInt(100));
}
static ArrayList<Car> Random_ArrayList(int count){
ArrayList<Car> cars = new ArrayList<Car>();
ArrayList<Integer> time = new ArrayList<Integer>();
for (int i = 0; i < count; ++i){
Car car = new Car();
car.Random();
int start = (int)System.nanoTime();
cars.add(car);
int end = (int)System.nanoTime();
Log.NoTimePrint("add, ID = " + i + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("addTotalCount = " + count + "\n");
long totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("addTotalTime = " + totalTime + "\n");
long medianTime = totalTime / (count);
Log.NoTimePrint("addMedianTime = " + medianTime + "\n");
Random random = new Random();
for (int i = 0; i < (count / 10); ++i){
int n = random.nextInt(4);
int start = (int)System.nanoTime();
cars.remove(n);
int end = (int)System.nanoTime();
Log.NoTimePrint("remove, ID = " + n + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("removeTotalCount = " + (count / 10) + "\n");
totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("removeTotalTime = " + totalTime + "\n");
medianTime = totalTime / count;
Log.NoTimePrint("removeMedianTime = " + medianTime + "\n");
return cars;
}
static LinkedList<Car> Random_LinkedList(int count){
LinkedList<Car> cars = new LinkedList<Car>();
ArrayList<Integer> time = new ArrayList<Integer>();
for (int i = 0; i < count; ++i){
Car car = new Car();
car.Random();
int start = (int)System.nanoTime();
cars.add(car);
int end = (int)System.nanoTime();
Log.NoTimePrint("add, ID = " + i + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("addTotalCount = " + count + "\n");
long totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("addTotalTime = " + totalTime + "\n");
long medianTime = totalTime / (count);
Log.NoTimePrint("addMedianTime = " + medianTime + "\n");
Random random = new Random();
time.clear();
for (int i = 0; i < (count / 10); ++i){
int n = random.nextInt(4);
int start = (int)System.nanoTime();
cars.remove(n);
int end = (int)System.nanoTime();
Log.NoTimePrint("remove, ID = " + n + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("removeTotalCount = " + (count / 10) + "\n");
totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("removeTotalTime = " + totalTime + "\n");
medianTime = totalTime / count;
Log.NoTimePrint("removeMedianTime = " + medianTime + "\n");
return cars;
}
String toStr_Car() {
return "\nМарка: " + this.model + " Скорость: " + this.speed + radio.toStr() + "\n";
}
}
import java.util.Date;
import java.util.Random;
import java.util.ArrayList;
import java.util.LinkedList;
enum Moving { moving_to_post, passed, not_passed }
public class Car {
private String model;
private int speed;
private Radio radio;
private Moving moving;
Car(){
this.model = "Unknown";
this.speed = 50;
this.radio = new Radio();
this.moving = Moving.moving_to_post;
}
Car(String model, int speed, Radio radio){
this.model = model;
this.speed = speed;
this.radio = radio;
this.moving = Moving.moving_to_post;
}
int getSpeed(){
return this.speed;
}
void Move(Moving moving){
this.moving = moving;
}
void Random(){
Random random = new Random();
this.model = "car" + random.nextInt(100000);
this.speed = random.nextInt(300);
this.radio = new Radio(random.nextBoolean(), "rad" + random.nextInt(100));
}
static ArrayList<Car> Random_ArrayList(int count){
ArrayList<Car> cars = new ArrayList<Car>();
ArrayList<Integer> time = new ArrayList<Integer>();
for (int i = 0; i < count; ++i){
Car car = new Car();
car.Random();
int start = (int)System.nanoTime();
cars.add(car);
int end = (int)System.nanoTime();
Log.NoTimePrint("add, ID = " + i + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("addTotalCount = " + count + "\n");
long totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("addTotalTime = " + totalTime + "\n");
long medianTime = totalTime / (count);
Log.NoTimePrint("addMedianTime = " + medianTime + "\n");
Random random = new Random();
for (int i = 0; i < (count / 10); ++i){
int n = random.nextInt(4);
int start = (int)System.nanoTime();
cars.remove(n);
int end = (int)System.nanoTime();
Log.NoTimePrint("remove, ID = " + n + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("removeTotalCount = " + (count / 10) + "\n");
totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("removeTotalTime = " + totalTime + "\n");
medianTime = totalTime / count;
Log.NoTimePrint("removeMedianTime = " + medianTime + "\n");
return cars;
}
static LinkedList<Car> Random_LinkedList(int count){
LinkedList<Car> cars = new LinkedList<Car>();
ArrayList<Integer> time = new ArrayList<Integer>();
for (int i = 0; i < count; ++i){
Car car = new Car();
car.Random();
int start = (int)System.nanoTime();
cars.add(car);
int end = (int)System.nanoTime();
Log.NoTimePrint("add, ID = " + i + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("addTotalCount = " + count + "\n");
long totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("addTotalTime = " + totalTime + "\n");
long medianTime = totalTime / (count);
Log.NoTimePrint("addMedianTime = " + medianTime + "\n");
Random random = new Random();
time.clear();
for (int i = 0; i < (count / 10); ++i){
int n = random.nextInt(4);
int start = (int)System.nanoTime();
cars.remove(n);
int end = (int)System.nanoTime();
Log.NoTimePrint("remove, ID = " + n + ", " + (end - start) + "\n");
time.add(end - start);
}
Log.NoTimePrint("removeTotalCount = " + (count / 10) + "\n");
totalTime = 0;
for (int i : time){
totalTime += i;
}
Log.NoTimePrint("removeTotalTime = " + totalTime + "\n");
medianTime = totalTime / count;
Log.NoTimePrint("removeMedianTime = " + medianTime + "\n");
return cars;
}
String toStr_Car() {
return "\nМарка: " + this.model + " Скорость: " + this.speed + radio.toStr() + "\n";
}
}
Соседние файлы в папке lab2_java