Java 如何在数组中返回随机指定的数量?
我正在制作一个游戏,用户可以选择手中的骰子数量。我的代码不会输出任何骰子(直到我稍后在主代码中使用它)。当它们稍后出现在我的主菜单中时,第一个数字是随机的,但其余的是零,并且总是有五个骰子(即使我输入我只想要两个或三个)。有人知道为什么我的用户输入没有给我正确的输出吗 以下是我得到的输出: 以下是我的主要观点:Java 如何在数组中返回随机指定的数量?,java,arrays,Java,Arrays,我正在制作一个游戏,用户可以选择手中的骰子数量。我的代码不会输出任何骰子(直到我稍后在主代码中使用它)。当它们稍后出现在我的主菜单中时,第一个数字是随机的,但其余的是零,并且总是有五个骰子(即使我输入我只想要两个或三个)。有人知道为什么我的用户输入没有给我正确的输出吗 以下是我得到的输出: 以下是我的主要观点: yahtzee公共类{ 公共静态void main(字符串[]args){ int play=1,scorea=0,sum=0; int[]wins=新int[15]; 而((播放=1
yahtzee公共类{
公共静态void main(字符串[]args){
int play=1,scorea=0,sum=0;
int[]wins=新int[15];
而((播放=1)和&(总和<15)){
总和=0;
int[]Dice=newint[]{0,0,0,0,0};//创建一个数组
int roll=0;
int x,y,w,z;
int-rerolla=0,rerollb=03;
骰子骰子=新骰子();
yahtzeeConfig config=新的yahtzeeConfig();
对于(x=0;x<1;x++){
Dice[x]=config.Sides();
骰子。滚();
//Dice[x]=die.get();//设置骰子值
//Dice[x]=config.Sides();
}
System.out.println(“\n这是您的卷:\n”);
如果(骰子[x]==1){
System.out.println(“骰子1:+Dice[0]);
}
如果(骰子[x]==2){
System.out.println(“骰子1:+Dice[0]);
System.out.println(“骰子2:+骰子[1]);
}
如果(骰子[x]==3){
System.out.println(“骰子1:+Dice[0]);
System.out.println(“骰子2:+骰子[1]);
System.out.println(“骰子3:+骰子[2]);
}
如果(骰子[x]==4){
System.out.println(“骰子1:+Dice[0]);
System.out.println(“骰子2:+骰子[1]);
System.out.println(“骰子3:+骰子[2]);
System.out.println(“骰子4:+骰子[3]);
}
如果(骰子[x]==5){
//System.out.println(“\n这是您的卷:\n”);
System.out.println(“骰子1:+Dice[0]);
System.out.println(“骰子2:+骰子[1]);
System.out.println(“骰子3:+骰子[2]);
System.out.println(“骰子4:+骰子[3]);
System.out.println(“骰子5:+骰子[4]);
}
}
}
}
这是我的yahtzeeConfig课程:
import java.util.Scanner;
导入java.util.Random;
类yahtzeeConfig{
公共内部方(){
字符串文件=“yahtzeeConfig.txt”;
扫描仪扫描=新扫描仪(System.in);
//配置骰子的边
System.out.println(“输入+
“每个骰子(1-6)想要的边:”;
int sides=scan.nextInt();
返回侧;
}
}
如果要从方法Slides()返回6个随机数,可以使用
final int[]dicesRandom=new Random().int(1,6).distinct().toArray();
在您的方法中实现
public int[]Sides(){
字符串文件=“yahtzeeConfig.txt”;
final int[]dicesRandom=new Random().int(1,6).distinct().toArray();
返回骰子随机数;
}
在主类中,您不需要通过for循环,只需调用此方法,它将为您生成6个数字。如果您使用调试器逐步完成代码,我认为您会很快发现问题。如果看不到骰子类是什么,就不可能回答。