「兔子游戏java」兔子游戏怎么玩

博主:adminadmin 2023-01-04 05:21:06 1000

本篇文章给大家谈谈兔子游戏java,以及兔子游戏怎么玩对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

JAVA龟兔赛跑问题

先让兔子进入阻塞状态,然后等乌龟跑完终点后唤醒兔子线程就行;下面是各个方法的配套使用(网上copy的,总结的很不错)1. sleep() 方法:sleep() 允许 指定以毫秒为单位的一段时间作为参数,它使得线程在指定的时间

内进入阻塞状态,不能得到CPU 时间,指定的时间一过,线程重新进入可执行状态。

典型地,sleep() 被用在等待某个资源就绪的情形:测试发现条件不满足后,让线程阻塞一段时间后

重新测试,直到条件满足为止。

2. suspend() 和 resume() 方法:两个方法配套使用,suspend()使得线程进入阻塞状态,并且不会

自动恢复,必须其对应的resume() 被调用,才能使得线程重新进入可执行状态。典型地,suspend() 和

resume() 被用在等待另一个线程产生的结果的情形:测试发现结果还没有产生后,让线程阻塞,另一个

线程产生了结果后,调用 resume() 使其恢复。

3. yield() 方法:yield() 使得线程放弃当前分得的 CPU 时间,但是不使线程阻塞,即线程仍处于

可执行状态,随时可能再次分得 CPU 时间。调用 yield() 的效果等价于调度程序认为该线程已执行了足

够的时间从而转到另一个线程。

4. wait() 和 notify() 方法:两个方法配套使用,wait() 使得线程进入阻塞状态,它有两种形式

,一种允许指定以毫秒为单位的一段时间作为参数,另一种没有参数,前者当对应的 notify() 被调用或

者超出指定时间时线程重新进入可执行状态,后者则必须对应的 notify() 被调用。

详情请见

Java的龟兔赛跑多线程问题

public class Competition {

private volatile static boolean gameOver = false;//用来标记是否有人到达终点,到达终点后游戏结束

//乌龟的实现方式

static class Tortoise implements Runnable{

private volatile int total = 0;//用来记录当前已经前行了多少距离

@Override

public void run() {

while(!gameOver){

int step = (int)(Math.random()*5+1);//产生1-5的随机数

total += step;

try {

Thread.sleep(200);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

public int getTotal(){

return total;

}

}

//兔子的实现方式

static class Rabbit implements Runnable{

private volatile int total = 0;

@Override

public void run() {

while(!gameOver){

int step = (int)(Math.random()*5+1);

total += step;

try {

Thread.sleep(200);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

public int getTotal(){

return total;

}

}

/**

 * @param args

 */

public static void main(String[] args) {

// TODO Auto-generated method stub

final Tortoise tortoise = new Tortoise();

final Rabbit rabbit = new Rabbit();

new Thread(tortoise).start();

new Thread(rabbit).start();

//下面多起了一个线程,相当于比赛的时候的裁判员,他每隔一段时间就看一下是否有人到达终点,若有人到达则宣判该人获胜,游戏结束

new Thread(new Runnable(){

@Override

public void run() {

// TODO Auto-generated method stub

while(!gameOver){

int torLen = tortoise.getTotal();//获得乌龟前行的距离

int rabLen = rabbit.getTotal();//获得兔子前行的距离

System.out.println("乌龟:"+torLen+",兔子"+rabLen);

if(torLen = 100  rabLen 100){

System.out.println("乌龟获胜!!!");

gameOver = true;

}else if(rabLen = 100  torLen 100){

System.out.println("兔子获胜!!!");

gameOver = true;

}else if(rabLen =100  torLen = 100){//这里有可能两人同时到达终点

System.out.println("同时到达终点!!!");

gameOver = true;

}

try {

Thread.sleep(210);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}).start();

}

java 编写 有一对兔子 写的程序哪儿不对了,我是初学者,高手们帮下忙。

import java.util.Scanner;

public class Rabbit

{

static int func(int x){

if(x==1 || x==2)

return 1;

else

return func(x-1)+func(x-2);

}

public static void main(String[] args)

{

Scanner scanner = new Scanner(System.in);

int n = scanner.nextInt();

System.out.println(func(n));

}

}

带个java游戏是兔子吃萝卜的 叫什么名字

是不是两只兔子,可以双人玩的,一只绿色的一只红色的的

你搜下《兔子吃萝卜》游戏名字就是这个,,这个是3D的,说明和你的挺像

求助:关于一对兔子的JAVA题(会的进!)

package com.efreda.sweet;

import java.util.*;

/**

*

* @author Sweet

* @discribtion 一个实例代表一对兔子,这里没有考虑兔子的死亡

*/

public class Rabbit {

private int bornMonth;//生产间隔

private int grow;//成长月数

private boolean isParent;//是否是父兔子

public Rabbit(int bornMonth,boolean isParent){

this.bornMonth=bornMonth;

this.grow=0;

this.isParent=isParent;

}

public void addGrow(){

this.grow++;

}

public boolean isBorn(int month){

if(this.isParent){

if(month%this.bornMonth==0){

return true;

}else{

return false;

}

}else{

if((month%this.bornMonth==0)(this.grow3)){

return true;

}else{

return false;

}

}

}

public static void main(String args[]){

ArrayListRabbit array=new ArrayListRabbit();

Rabbit parent=new Rabbit(1,true);/*实例化第一对父兔子,根据条件,他们的生产间隔为一个月*/

array.add(parent);

for(int i=1;i=12;i++){//循环12个月

//首先让每一只兔子的成长度加1

for(int j=0;jarray.size();j++){

array.get(j).addGrow();

}

//然后判断兔子是否生产

for(int j=0;jarray.size();j++){

if(array.get(j).isBorn(i)){

Rabbit child=new Rabbit(3,false);/*这里产生的兔子都是子兔子了*/

array.add(child);

}

}

}

System.out.print(array.size()*2);/*打印出兔子的只数,因为一个实例是2只兔子,所以这里乘以2*/

}

}

一个手机游戏,让你去救一只兔子,然后收集蜘蛛丝,蓝羽毛之类的东西,名字好像有野人什么的

你好,

这款手机游戏应该是野人岛的,下载这款手机游戏的安卓版本的话,你可以直接去电脑管家的安卓游戏里面去搜索下载的,是可以非常简单找到的,然后直接点击下载就可以安装到手机的!

如下:打开腾讯电脑管家→【软件管理】→【安卓游戏】→搜索游戏→将手机与电脑连接 直接搜索游戏名称就可以找到了

搜索 野人岛 就可以了!

更多问题去电脑管家企业平台提问吧!

腾讯电脑管家企业平台:

关于兔子游戏java和兔子游戏怎么玩的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。