Java 数学。随机值一直被选择?

Java 数学。随机值一直被选择?,java,arrays,loops,for-loop,Java,Arrays,Loops,For Loop,基本上,出于某种原因,在for循环math.random部分中,第一个数组值“a0”一直被选择。它为什么要这样做?我如何修复它?(另外,您不必读取每个字符串数组值) 公共级战列舰扩展JPanel { 公共静态void main(字符串[]args) { 字符串[][]pos=新字符串[10][10]; ... //我们在这里初始化pos ... int-horcol=0; boolean[]tof=新的boolean[10][10]; 布尔值=假; int-vertcol=0; 对于(intk=

基本上,出于某种原因,在for循环math.random部分中,第一个数组值“a0”一直被选择。它为什么要这样做?我如何修复它?(另外,您不必读取每个字符串数组值)

公共级战列舰扩展JPanel
{
公共静态void main(字符串[]args)
{
字符串[][]pos=新字符串[10][10];
...
//我们在这里初始化pos
...
int-horcol=0;
boolean[]tof=新的boolean[10][10];
布尔值=假;
int-vertcol=0;

对于(intk=0;k,这里的问题非常简单

问题出在你父母身上

目前您有:

int x = (int)Math.random()*15;
因此,计算机将首先执行
Math.random()
,它将返回一个介于0和1之间的浮点值(类似于0.648294),然后将其转换为
int
,该值将始终为0,因为它会截断数字,然后乘以15,仍然是0

您需要在
Math.random()*15
部分周围添加括号,如下所示:

int x = (int)(Math.random()*15);

这将首先将随机值乘以15,然后将其转换为整数(并在此过程中截断).

这看起来似乎比严格要求的代码要多。您能将代码进一步缩减到吗?我绝对可以尝试。现在,请重试,并将代码缩减到再现问题的绝对最小行数。请参阅。在编辑时,将问题标题更改为描述问题或问题的内容。我需要调试方面的帮助这?完全没有信息,对于正在搜索有关其问题的帮助并在搜索结果中看到它的未来读者来说,这将是毫无意义的。老实说,这是绝对的最低限度,因为我不知道错误发生在哪里。请您至少提一下这是哪种编程语言。
int x = (int)(Math.random()*15);