package edu.mama.ls18.homework;
    mport java.util.function.ToIntBiFunction;
    ublic class Homework {
    _/*
    编写一段程序启动三个线程,要求:
    1、三个线程的名称是A,B,C
    2、每个线程打印自己的名称5遍
    3、B打印完成后再开始打印A和C
    /
    _public static void print() {
    Runnable task=new PrintNameRunnable();
    Thread ta = new Thread(task,”A”);
    Thread tb = new Thread(task,”B”);
    Thread tc = new Thread(task,”C”);
    tb.start();
    try {
    tb.join();
    } catch (InterruptedException e) {
    e.printStackTrace();
    }
    ta.start();
    tc.start();
    }

    1. _/**<br /> * 龟兔赛跑<br /> *<br /> * 编写一段程序,要求:<br /> * 1、兔子速度3米/秒,每跑5秒就要睡觉休息,每次休息时长为5~20秒不等<br /> * 2、乌龟速度1米/秒,从来不休息<br /> * 3、每秒打印兔子和乌龟所跑长度(单位:米)<br /> * 4、任何一方到达50米的终点时,比赛结束,打印比赛结果(是乌龟胜利还是兔子胜利)<br /> */<br /> _public static void run() {<br /> _/**<br /> * 3个线程:1个裁判+2个运动员<br /> * 裁判:负责比赛启动、中途输出奔跑距离、判断比赛结束、宣布结果<br /> * main先启动裁判judge线程,judge再负责启动乌龟和兔子线程<br /> * 比赛的数据全部记录在race类中<br /> */<br /> _Race race=new Race();<br /> Runnable hare=new HareRunnable(race);<br /> Runnable tortoise=new TortoiseRunnable(race);<br /> Runnable judge=new JudgeRunnable(race,new Thread(hare),new Thread(tortoise));<br /> new Thread(judge).start();<br /> }
    2. public static void main(String[] args) {<br /> _print_();
    3. //等一下,让前面的线程结束<br /> try {<br /> Thread._sleep_(5000);<br /> } catch (InterruptedException e) {<br /> e.printStackTrace();<br /> }<br /> <br /> _run_();<br /> }<br />}