Kleine Änderungen in der RobotFacory und Factorysystem. idVergeben() ist
jetzt in der RobotFactory.master
parent
f276084c7e
commit
04c6dc90f1
|
@ -10,16 +10,16 @@ public RobotFactory (String name) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int addRobot (RobotType robotType, String name, int id) {
|
public int addRobot (RobotType robotType, String name) {
|
||||||
Roboter roboter;
|
Roboter roboter;
|
||||||
|
|
||||||
if (RobotType.R2D2 == robotType) {
|
if (RobotType.R2D2 == robotType) {
|
||||||
roboter = new R2D2 (name, id);
|
roboter = new R2D2 (name, idVergeben(0,9999));
|
||||||
roboterLager.put(roboter.getId(), roboter);
|
roboterLager.put(roboter.getId(), roboter);
|
||||||
return roboter.getId();
|
return roboter.getId();
|
||||||
}
|
}
|
||||||
else if (RobotType.C3PO == robotType) {
|
else if (RobotType.C3PO == robotType) {
|
||||||
roboter = new C3PO (name,id);
|
roboter = new C3PO (name,idVergeben(10000,19999));
|
||||||
roboterLager.put(roboter.getId(), roboter);
|
roboterLager.put(roboter.getId(), roboter);
|
||||||
return roboter.getId();
|
return roboter.getId();
|
||||||
|
|
||||||
|
@ -35,4 +35,13 @@ public RobotFactory (String name) {
|
||||||
public Roboter findeRoboter (int id) {
|
public Roboter findeRoboter (int id) {
|
||||||
return roboterLager.get(id);
|
return roboterLager.get(id);
|
||||||
}
|
}
|
||||||
|
private int idVergeben(int min, int max) {
|
||||||
|
|
||||||
|
int randomValue = (int) (Math.random()*(max - min)) + min;
|
||||||
|
if (roboterLager.containsKey(randomValue)) {
|
||||||
|
idVergeben(min, max);
|
||||||
|
}
|
||||||
|
|
||||||
|
return randomValue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,7 @@ import Domäne.Roboter;
|
||||||
|
|
||||||
public class Factorysystem {
|
public class Factorysystem {
|
||||||
private RobotFactory robotFactory;
|
private RobotFactory robotFactory;
|
||||||
public HashMap<Integer, Roboter> roboterLager = new HashMap<>();
|
|
||||||
|
|
||||||
public Factorysystem (String name) {
|
public Factorysystem (String name) {
|
||||||
this.robotFactory = new RobotFactory (name);
|
this.robotFactory = new RobotFactory (name);
|
||||||
|
@ -20,26 +20,16 @@ public class Factorysystem {
|
||||||
RobotType robottype;
|
RobotType robottype;
|
||||||
if(auswahl == 1) {
|
if(auswahl == 1) {
|
||||||
robottype = RobotType.R2D2;
|
robottype = RobotType.R2D2;
|
||||||
int id = idVergeben(0, 9999);
|
int id = robotFactory.addRobot(robottype, name);
|
||||||
robotFactory.addRobot(robottype, name, id);
|
|
||||||
return id;
|
return id;
|
||||||
} else if(auswahl == 2) {
|
} else if(auswahl == 2) {
|
||||||
robottype = RobotType.C3PO;
|
robottype = RobotType.C3PO;
|
||||||
int id = idVergeben(10000, 19999);
|
int id = robotFactory.addRobot(robottype, name);
|
||||||
robotFactory.addRobot(robottype, name, id);
|
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
roboterLager.put(id, r);
|
return -1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private int idVergeben(int min, int max) {
|
|
||||||
|
|
||||||
int randomValue = (int) (Math.random()*(max - min)) + min;
|
|
||||||
if (roboterLager.containsKey(randomValue)) {
|
|
||||||
idVergeben(min, max);
|
|
||||||
}
|
|
||||||
|
|
||||||
return randomValue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue