一道简单的java骰子游戏的题!

Python014

一道简单的java骰子游戏的题!,第1张

你的问题是在判断是大是小的时候,不能直接用s=="大",要用s.equals("大")

这样就OK了,下面是一个改进的例子,你看下吧

import java.io.BufferedReader

import java.io.InputStreamReader

import java.util.Random

class DieGame

{

int die1=0,die2=0

int iRandom a=new Random()

void play()

{

try

{

System.out.println("请输入大小")

BufferedReader sd=new BufferedReader(new InputStreamReader(System.in ))

String s=sd.readLine()

die1=1+a.nextInt(6)

die2=1+a.nextInt(6)

if((die1+die2)>=7&&s.equals("大")) i=1

else if(die1+die2>=7&&s.equals("小")) i=0

else if(die1+die2<7&&s.equals("小")) i=1

else if(die1+die2<7&&s.equals("大")) i=0

if(i==1)

System.out.print("你赢了")

else

System.out.print("你输了")

System.out.println("第一个值是"+die1+"第二个值是"+die2)

}

catch(Exception ex)

{

ex.printStackTrace()

}

}

}

public class d{

public static void main(String args[])

{

DieGame dg=new DieGame()

dg.play()

}

}

public class Test {

public static void main(String[] args){

DieGame dieGame = new DieGame()

if (dieGame.play()) {

System.out.println("你赢了!")

} else {

System.out.println("你输了!")

}

}

}

class Die {

private int faceValue

public int getFaceValue() {

return faceValue

}

public void setFaceValue(int faceValue) {

this.faceValue = faceValue

}

public void roll() {

this.faceValue = (int) (Math.random() * 6 + 1)

}

}

class DieGame {

private Die die1 = new Die()

private Die die2 = new Die()

public boolean play() {

die1.roll()

System.out.println("第一次点数:" + die1.getFaceValue())

die2.roll()

System.out.println("第二次点数:" + die2.getFaceValue())

if (die1.getFaceValue() + die2.getFaceValue() == 7) {

return true

} else {

return false

}

}

}

问题1, 和5*5有什么关系,总共X不超过6,10*10又是什么意思

问题2,随机产生两个随机数,如x=1,y=4,【1】【4】写入1还是'A",怎么判断

问题3,最后程序怎么结束,遇到x,y位置有棋子在就结束,还是重新抛骰子,继续。