gpt4 book ai didi

java - 如何从 void 方法显示数组?

转载 作者:行者123 更新时间:2023-12-01 18:15:47 26 4
gpt4 key购买 nike

我是java初学者,正在尝试制作Yahtzee游戏,并且需要从void方法中将随机骰子作为数组。有人可以向我解释为什么这不起作用吗?

import java.util.Arrays;

public class YatzeeGame {

public static void main(String[] args) {
// TODO Auto-generated method stub
int[] diceRolls = new int[5];
diceRolls = throwDice(diceRolls);
System.out.println(display(diceRolls));
}

public static void throwDice(int [] dice) {
int [] roll = {(int)(Math.random()*6+1),
(int)(Math.random()*6+1),(int)(Math.random()*6+1),
(int)(Math.random()*6+1),(int)(Math.random()*6+1),
(int)(Math.random()*6+1)};
dice = roll;
}

public static String display(int [] dice) {
String str = Arrays.toString(dice);
str = str.replace("[", "");
str = str.replace("]", "");
str = str.replace("," , " ");
return str;
}

最佳答案

他们希望您替换该数组,如果您只是分配它,则不会发生这种情况。请注意,返回数组仍然被认为是更好的方法。额外棘手的是:在您现有的代码中,您创建一个大小为 5 的数组,另一个大小为 6 的数组。由于您将其称为 zahtzee,我们将使用 5。

public static void throwDice(int [] dice) {     
for (int x = 0; x < 5; x++)
dice[x] = (int)(Math.random()*6+1);
}

关于java - 如何从 void 方法显示数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29685311/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com