в чем прикол?
package com.javarush.task.task16.task1607;
import java.util.ArrayList;
import java.util.List;
/*
Horse Racing
*/
public class Solution {
public static int horseCount = 10;
public static void main(String[] args) throws InterruptedException {
List<Horse> horses = prepareHorsesAndStart ();
while (calculateHorsesFinished (horses) != horseCount) {
}
}
public static int calculateHorsesFinished(List<Horse> horses) throws InterruptedException {
int finishedCount = 0;
//add your implementation here - добавь свою реалзацию тут
for (int i = 0; i < horses.size (); i++) {
if (horses.get (i).isFinished () != true){
System.out.println ("Waiting for " + horses.get (i).getName());
horses.get (i).join ();
}else if (horses.get (i).isFinished ()) {
finishedCount++;
}
}
return finishedCount;
}
public static List<Horse> prepareHorsesAndStart() {
List<Horse> horses = new ArrayList<Horse> (horseCount);
String number;
for (int i = 1; i < horseCount + 1; i++) {
number = i < 10 ? ("0" + i) : "" + i;
horses.add (new Horse ("Horse_" + number));
}
for (int i = 0; i < horseCount; i++) {
horses.get (i).start ();
}
return horses;
}
public static class Horse extends Thread {
private static boolean isFinished;
public Horse(String name) {
super (name);
}
public static boolean isFinished() {
return isFinished;
}
public void run() {
String s = "";
for (int i = 0; i < 1001; i++) { //delay
s += "" + i;
if (i == 1000) {
s = " has finished the race!";
System.out.println (getName () + s);
isFinished = true;
}
}
}
}
}