java - 如何用之前创建的一维数组填充二维数组?

标签 java

我的任务是创建三个随机大小的数组并填充随机值,然后创建一个二维数组并用这三个数组填充它。

我尝试使用这种代码:

int[] tab1 = new int[(int)(Math.random() * 10)];
for(int i = 0; i<tab1.length; i++){
  tab1[i] = (int)(Math.random() * 10);
}
int[] tab2 = new int[(int)(Math.random() * 10)];
for(int i = 0; i<tab2.length; i++){
  tab2[i] = (int)(Math.random() * 10);
}
int[] tab3 = new int[(int)(Math.random() * 10)];
for(int i = 0; i<tab3.length; i++){
  tab3[i] = (int)(Math.random() * 10);
}
int[][] multiTab = new int[3][];

for(int a=0; a<tab1.length; a++){
  multiTab[0][a] = tab1[a];
}
for(int b=0; b<tab2.length; b++){
  multiTab[1][b] = tab2[b];
}
for(int c=0; c<tab3.length; c++){
  multiTab[2][c] = tab3[c];
}

但是环境抛出了 NullPointerException ,很可能是因为我无法声明数组第二维的大小。我该怎么做呢?感谢您提前提供帮助

最佳答案

你可以这样做:

int[][] multiTab = new int[3][Math.max(tab1.length, Math.max(tab2.length, tab3.length))];

关于java - 如何用之前创建的一维数组填充二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61431091/

相关文章:

java - 选择 maven-gpg-plugin 中使用的 GnuPG key

java - 在 swing 中显示 HTML5

java - 如何在其成员排序的intellij中生成java的hashcode方法?

java - ZipInputStream 和 JarInputStream 的 ZipEntry 大小不一致

java - json 数组中的对象未获取

JAVA_HOME 未设置

java - 创建包装器类

java - 使用 javax.sql.Datasource 并在 Websphere 上托管应用程序时出现 IllegalArgumentException

java - 空指针异常apache poi

java - 在 J2ME M3G 中查找对象