package com.xjh.demo.thread; /** * 规则:龟兔同时起步,每10毫秒秒跑1米,终点为100米,兔子跑步的能力强,乌龟跑步的能力弱 * <p> * 途中: 1.兔子跑到10米的时候,谦让乌龟一下,接着跑 * 2.兔子跑到50米的时候,再让龟1毫秒,接着跑 * 3.兔子跑到80米的时候,睡了50毫秒,接着跑 */ public class RaceTest { public static void main(String[] args) { new Rabbit().start(); new Tortoise().start(); } } class Rabbit extends Thread { @Override public void run() { for (int i = 0; i <=100; i++) { System.out.println("兔子跑了" + i + "米,剩余" + (100 - i) + "米"); try { Thread.sleep(10); if (i == 10) { System.out.println("兔子跑到10米,让乌龟先跑.."); Thread.yield(); } if (i == 50) { System.out.println("兔子跑到50米,让乌龟10毫秒"); Thread.sleep(10); } if (i == 80) { System.out.println("兔子跑到80米,让乌龟50毫秒"); Thread.sleep(50); } } catch (Exception e) { } } } } class Tortoise extends Thread { @Override public void run() { for (int i = 0; i <= 100; i++) { try { Thread.sleep(10); } catch (Exception e) { } System.out.println("乌龟跑了" + i + "米,剩余" + (100 - i) + "米"); } } }
多线程实例--龟兔赛跑
最新推荐文章于 2024-05-23 18:11:39 发布