【发布时间】:2019-07-26 12:34:27
【问题描述】:
import java.util.Scanner;
public class Trial7 {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("Please enter a array of numbers");
int n = input.nextInt();
int[] nums= new int[n];
int[] nums2= evenPositionsOnly(nums);
System.out.println(nums2);
}
public static int[] evenPositionsOnly(int[] nums){
//int[] result= new int[nums.length];
for(int i = 0; i<nums.length; i=i+2) {
if(i/2==0)
nums[i]= nums[i] ;
}
return nums;
}
}
这是一个更新。我不断收到错误,但不确定为什么。任何人都可以帮助解决可能的问题吗?
【问题讨论】:
-
想想回报的作用。如果您不确定,请找出答案。那么答案就很明显了。
-
导入 java.util.Scanner;公共类 Trial7 { public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.println("请输入数字数组"); int n = input.nextInt(); int[] nums= 新的 int[n]; int[] nums2= evenPositionsOnly(nums); System.out.println(nums2); } public static int[] evenPositionsOnly(int[] nums){ //int[] result= new int[nums.length]; for(int i = 0; i
-
如果您打算将其作为更新,请使用问题左下方的编辑按钮
-
感谢您的提示,对不起,我是 java 新手,所以遇到了很多麻烦。当我将迭代器更改为 i++ 时,我得到 [I@55f96302 作为输出。你会知道为什么会这样吗?
-
尝试单步执行你的循环。当前您迭代整个数组,如果索引是偶数,则将值设置为它已经等于的值。这既使数组保持不变,也完全未修改。您将需要一个新数组(插入),并为其适当映射索引(使用
/2仍然有帮助)。