我正在使用模拟器来玩掷骰子,我试图从相同的方法返回两个值(或者我想)。是否有可能从Java中的方法返回多个值?
当我编写我的return语句时,我只是试着把编译和运行正确的“&”但我无法访问第二个返回的值。
public static int crapsGame(){
int myPoint;
int gameStatus = rollagain;
int d1,d2;
int rolls=1;
d1 = rollDice();
d2 = rollDice();
switch (d1+d2) {
case 7:
case 11:
gameStatus = win;
break;
case 2:
case 3:
case 12:
gameStatus = loss;
break;
default:
myPoint = d1+d2;
do {
d1=rollDice();
d2=rollDice();
rolls++;
if (d1+d2 == myPoint)
gameStatus = win;
else if (d1+d2 == 7)
gameStatus = loss;
} while (gameStatus == rollagain);
} // end of switch
return gameStatus & rolls;
}
当我返回的值:
gameStatus=crapsGame();
处理器设置varaible赢或输,但如果我尝试简单的东西如下这句话有:
rolls=crapsGame();
它被赋予与gamestatus ... a 0或1(赢或输)相同的值。 任何我可以访问第二个返回值的方式?还是有一种完全不同的方式去做呢?
使用对象或散列图或模型类的数组 – 2013-03-08 01:39:43
不,它不是。您可以返回一个对象,但该对象可以包含多个属性 – 2013-03-08 01:39:51
您应该返回一个int []。结帐http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html – sissonb 2013-03-08 01:40:26