package java02;
/**
* 我的java每天100行代码008
* 利用多线程实现龟兔赛跑
* @author Administrator
*
*/
public class java0082 {
public static void main(String[] args) {
//一场比赛
Racer r = new Racer();
//两个代理(兔子,乌龟在跑)
new Thread(r,"tortoise").start();
new Thread(r,"rabbit").start();
}
}
class Racer implements Runnable{
public static String winner;
public void run(){
for(int steps=1;steps<=100;steps++) {
//模拟休息
if(Thread.currentThread().getName().equals("rabbit")&&steps%10==0) {
try {
Thread.sleep(1);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println(Thread.currentThread().getName()+"-->"+steps);
boolean flag = GameOver(steps);
if(flag==true) {
break;
}
}
}
public boolean GameOver(int steps) {
if(winner!=null) {
return true;
}else {
if(steps == 100) {
winner = Thread.currentThread().getName();
System.out.println("winner-->"+winner);
return true;
}
}
return false;
}
}
Java100-008:利用多线程实现龟兔赛跑
猜你喜欢
转载自blog.csdn.net/qq_43356439/article/details/85346067
今日推荐
周排行