如何向数组中的每个值添加1(在Java中)?
提示如下: 循环一个整数数组,每个元素加一个。返回结果数组。数组可以是任何长度,包括0 以下是我目前掌握的情况:如何向数组中的每个值添加1(在Java中)?,java,arrays,for-loop,Java,Arrays,For Loop,提示如下: 循环一个整数数组,每个元素加一个。返回结果数组。数组可以是任何长度,包括0 以下是我目前掌握的情况: public int[] add1toEach(int[] nums) { int[] array = new int[nums.length]; for (int i = 0; i < nums.length; i++) { nums[i]++; } return array; } public int[]add1toEach(int[]nums){
public int[] add1toEach(int[] nums) {
int[] array = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
nums[i]++;
}
return array;
}
public int[]add1toEach(int[]nums){
int[]数组=新的int[nums.length];
对于(int i=0;i
它与
add1toEach[]
和add1toEach[-1]
一起工作,但仅此而已。如果add1toEach[6,6,2]
是输入,如何让它吐出[7,7,3]
正确的代码是:
public static int[] add1toEach(int[] nums) {
int[] array = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
array[i]=nums[i]+1;
}
return array;
}
代码所做的是,它只返回未触及的
int[]数组
由于您已经设置了数组的长度,因此只需使用positionarray[i]
为数组设置值,即可将值分配到完整的位置
array[i]=nums[i]++;
你的描述很不清楚。您试图实现什么?您正在创建一个新数组,更新原始数组,但返回未更改的新数组(这将是一个与原始数组长度相同的零数组),请用简单的英语解释您编写的每一行代码的作用。我认为您在这样做时会看到问题。这是因为您增加了nums数组中的元素,但返回了另一个未使用的数组Java 8+
返回Arrays.stream(nums).map(I->I+1).toArray()代码>这也将修改NUM。因此,这段代码乍一看似乎可以工作,但事实上是荒谬的:它修改输入数组,为了好玩,创建一个副本,然后返回副本,这没有什么意义,而且与方法名称不匹配。-另一个答案。
2
3
4
array[i]=nums[i]++;