题目描述

编写多线程应用程序,模拟三个人Tom,Peter,Bob过山洞:
1、这个山洞每次只能通过一个人,每个人通过山洞的时间为1秒

2、过山洞次序为:Tom,Peter,Bob

 

将下列代码补充完整:

public class Main{
    public static void main(String[] args) {
        Tunnel tul = new Tunnel();
        Thread tom = new Thread(tul,\"Tom\");
// 你的代码将嵌入这里

输出描述

Tom have Crossed the tunnel!This is 1th
Peter have Crossed the tunnel!This is 2th
Bob have Crossed the tunnel!This is 3th

 

 

Thread peter = new Thread(tul,\"Peter\");
		Thread bob = new Thread(tul,\"Bob\");
	
		tom.start();
		peter.start();
		bob.start();
	}
}
class Tunnel implements Runnable
{
	
	public void run()
	{
		for(int i = 1;i<=3;i++)
		{
			if(i == 1&&Thread.currentThread().getName().equals(\"Tom\"))
			{
				System.out.println(\"Tom\"+\" have Crossed the tunnel!This is \"+i+\"th\");
				i++;
			}
		    if(i == 2&&Thread.currentThread().getName().equals(\"Peter\"))
			{
				System.out.println(\"Peter\"+\" have Crossed the tunnel!This is \"+i+\"th\");
				i++;
			}
			if(i == 3&&Thread.currentThread().getName().equals(\"Bob\"))
			{
				System.out.println(\"Bob have Crossed the tunnel!This is \"+i+\"th\");
				i++;
			}
		}
			
	}
}

 

收藏 打印