Race
/**
* 比赛龟兔赛跑
*/
public class Race {
boolean isWin = false;
public static void main(String[] args) {
Race race = new Race();
Thread rabbit = new Thread(new Rabbit(race), "兔子");
Thread t = new Thread(new T(race), "乌龟");
rabbit.start();
t.start();
}
}
Rabbit
/**
* 兔子
*/
public class Rabbit implements Runnable{
private Race race;
public Rabbit(Race r){
race = r;
}
@Override
public void run(){
try {
for(int i=0; i<=100; i+=10){
if (race.isWin)
return ;
System.out.println("兔子"+ i);
if(i == 100){
race.isWin = true;
System.out.println("兔子赢了");
return ;
}
int rt = (int)(Math.random() * 500);
Thread.sleep(rt);
}
}catch (Exception e){
}
}
}
tortoise
/**
* 乌龟
*/
public class T implements Runnable {
Race race;
public T(Race r){
race = r;
}
@Override
public void run(){
try {
for(int i=0; i<=100; i+=4){
if (race.isWin)
return;
System.out.println("乌龟" + i);
if (i == 100){
race.isWin = true;
System.out.println("乌龟赢了");
return;
}
Thread.sleep(100);
}
}catch (Exception e){
}
}
}
网友评论