【问题标题】:How to initialize all the elements of a 2D array to any specific value in java如何将二维数组的所有元素初始化为java中的任何特定值
【发布时间】:2018-09-28 13:04:21
【问题描述】:

在 C++ 中有一个函数 ( memset() ) 可以初始化一维数组和任何多维数组的值。但是在java中有一个函数fill可以初始化一维数组但不能初始化多维数组。

【问题讨论】:

  • 您能详细说明一下吗?你想在java中做什么,你是怎么做的,为什么它不起作用?
  • 你试过用两个循环吗?
  • 我还没有使用循环
  • 如果 x 是一个二维整数数组 then.to 用 3 填充 x 中的所有值使用Arrays.stream(x).forEach(a->{Arrays.fill(a,03);});

标签: java multidimensional-array initialization memset


【解决方案1】:

Arrays.fill() 方法可用于填充一维数组,但没有内置方法可以“深度”填充多维数组。

对于二维数组,我会这样做:

int[][] arr2 = new int[5][5];  
for(int[] arr1 : arr2) 
  Arrays.fill(arr1, 1);

【讨论】:

  • 痛苦。太糟糕了,这在 java8/9 时间范围内没有得到改进
猜你喜欢
  • 2012-04-22
  • 1970-01-01
  • 2020-09-29
  • 2016-12-09
  • 2020-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-09
相关资源
最近更新 更多