當前位置:編程學習大全網 - 編程語言 - Java的龜兔賽跑中的多線程

Java的龜兔賽跑中的多線程

公共?班級?競爭?{

私人?易變?靜電?布爾?gameOver?=?假的;//用來標記是否有人到達終點,到達終點後遊戲結束。

//如何實現烏龜

靜電?班級?烏龜?器物?可運行{

私人?易變?int?總計?=?0;//用來記錄自己走了多遠。

@覆蓋

公共?作廢?run()?{

而(!遊戲結束){

int?壹步?=?(int)(math . random()* 5+1);//生成壹個隨機數1-5

總計?+=?步;

試試?{

thread . sleep(200);

}?接住?(中斷異常?e)?{

//?托多?自動生成?接住?街區

e . printstacktrace();

}

}

}

公共?int?getTotal(){

回歸?總計;

}

}

//如何實現兔子

靜電?班級?兔子?器物?可運行{

私人?易變?int?總計?=?0;

@覆蓋

公共?作廢?run()?{

而(!遊戲結束){

int?壹步?=?(int)(math . random()* 5+1);

總計?+=?步;

試試?{

thread . sleep(200);

}?接住?(中斷異常?e)?{

//?托多?自動生成?接住?街區

e . printstacktrace();

}

}

}

公共?int?getTotal(){

回歸?總計;

}

}

/**

?*?@param?壹個參數名

?*/

公共?靜電?作廢?main(String[]?args)?{

//?托多?自動生成?方法?煙蒂

決賽?烏龜?烏龜?=?新的?烏龜();

決賽?兔子?兔子?=?新的?兔子();

新的?線(烏龜)。start();

新的?線(兔子)。start();

//下面有壹個線程,相當於比賽過程中的裁判。他每隔壹段時間就會查看是否有人到達終點,如果有人到達,就會宣布此人獲勝,遊戲結束。

新的?線程(新?Runnable(){

@覆蓋

公共?作廢?run()?{

//?托多?自動生成?方法?煙蒂

而(!遊戲結束){

int?托倫。=?tortoise . gettotal();//得到烏龜前進的距離。

int?拉伯倫?=?rabbit . gettotal();//獲取兔子行進的距離。

System.out.println("烏龜:"+torLen+",兔子"+兔子);

如果(托倫?& gt=?100?& amp& amp?拉伯倫?& lt100){

System.out.println("烏龜贏了!!!");

gameOver?=?真實;

}別的?如果(拉伯倫?& gt=?100?& amp& amp?托倫。& lt100){

System.out.println("兔子贏了!!!");

gameOver?=?真實;

}別的?如果(拉伯倫?& gt=100?& amp& amp?托倫。& gt=?100){//這裏有可能兩個人同時到達終點。

System.out.println("同時到達終點!!!");

gameOver?=?真實;

}

試試?{

thread . sleep(210);

}?接住?(中斷異常?e)?{

//?托多?自動生成?接住?街區

e . printstacktrace();

}

}

}

}).start();

}

  • 上一篇:大學計算機專業課程有哪些
  • 下一篇:鬥魚女主播魅力四溢的直播之星
  • copyright 2024編程學習大全網