PIbd-22_Kashin_M.I_Gasoline.../src/CreaterGeneric.java

39 lines
1.3 KiB
Java

import java.util.Random;
import java.util.ArrayList;
public class CreaterGeneric <T extends EntityGasolineTanker, U extends IDrawningObjectWheels>{
ArrayList<T> GasolineTanker;
ArrayList<U> Wheels;
int GasolineTankerCount=0;
int WheelsCount=0;
public CreaterGeneric(int gasolineTankerCount,int wheelsCount){
GasolineTanker=new ArrayList<>(gasolineTankerCount);
Wheels=new ArrayList<>(wheelsCount);
}
public int Add(T gasolineTanker){
if(GasolineTankerCount<=GasolineTanker.size()){
GasolineTanker.add(gasolineTanker);
GasolineTankerCount++;
return GasolineTankerCount-1;
}
return -1;
}
public int Add(U wheels){
if(WheelsCount<=Wheels.size()){
Wheels.add(wheels);
WheelsCount++;
return WheelsCount-1;
}
return -1;
}
public DrawingGasolineTanker NewGasolineTankerCreating()
{
Random rand=new Random();
T gasolineTanker = (GasolineTanker.get(rand.nextInt(GasolineTankerCount)));
U wheel = (Wheels.get(rand.nextInt(WheelsCount)));
if(gasolineTanker instanceof EntityImprovedGasolineTanker){
return new DrawingImprovedGasolineTanker(gasolineTanker,wheel);
}
return new DrawingGasolineTanker(gasolineTanker,wheel);
}
}