package com.xiao.testThread; //模拟龟兔赛跑 public class Race 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){//如果比赛结束了,就停止程序 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 race=new Race(); new Thread(race,"兔子").start(); new Thread(race,"乌龟").start(); } }
20
2021
02
Java 多线程龟兔赛跑
作者:xiao | 分类:软件笔记 | 浏览:24 | 评论:1
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
评论列表: