import java.util.Arrays; import java.util.Random; public class BusyPerson extends Thread { public static Random random = new Random( 19580427 ); private String name = ""; private Task[] tasks; BusyPerson(String name, Task[] tasks) { this.name = name; this.tasks = tasks; } @Override public void run() { while(this.tasks.length > 0) { long waitTime = (long) (random.nextDouble() * (double)Speed.getSpeedInt(this.tasks[0].speed)); System.out.println(this.name + " is... " + this.tasks[0].task + " - " + this.tasks[0].speed + " (" + ((double) waitTime / 1000) + "s)"); this.tasks = Arrays.copyOfRange(this.tasks, 1, this.tasks.length); try { BusyPerson.sleep(waitTime); } catch (InterruptedException e) { e.printStackTrace(); } } } }