//模拟龟兔赛跑 public class 龟兔赛跑 implements Runnable{ //胜利者 private static String winner; @Override public void run() { for (int i = 0; i <= 100; i++) { //模拟兔子休息 if (Thread.currentThread().getName().equals("兔子") && i % 10 ==0) { try { Thread.sleep(5); } catch (InterruptedException e) { e.printStackTrace(); } } //判断比赛是否结束 boolean flag = gameOver(i); //如果比赛结束了,就停止程序 if (flag == true) { break; } System.out.println(Thread.currentThread().getName()+"-->跑了"+i+"步 "); } } //判断是否完成了比赛 private boolean gameOver(int steps){ if (winner != null){//已经存在胜利者了 return true; }{ if (steps ==100){ winner = Thread.currentThread().getName(); System.out.println("winner is"+winner); return true; } } return false; } public static void main(String[] args) { 龟兔赛跑 race = new 龟兔赛跑(); new Thread(race,"兔子").start(); new Thread(race,"乌龟").start(); } }
多线程-----龟兔赛跑
最新推荐文章于 2023-06-26 02:30:15 发布