Java 需要基于输入中值反转整数数组

Java 需要基于输入中值反转整数数组,java,arrays,Java,Arrays,需要根据输入数字反转整数数组 例如: 数组be[1,2,3,4,5,6,7,8,9],子集的值为N=4 那么反转后的数组将是[4,3,2,1,8,7,6,5,9]。 如果N=3,则输出应为[3,2,1,6,5,4,9,8,7] 无法想到使用递归方法或任何循环概念的正确逻辑请尝试下面的java代码 public static int[] reverse(int[] a, int number) { // negative case if (number < 0) {

需要根据输入数字反转整数数组 例如:

数组be[1,2,3,4,5,6,7,8,9],子集的值为N=4
那么反转后的数组将是[4,3,2,1,8,7,6,5,9]。
如果N=3,则输出应为[3,2,1,6,5,4,9,8,7]

无法想到使用递归方法或任何循环概念的正确逻辑

请尝试下面的java代码

public static int[] reverse(int[] a, int number) {
    // negative case
    if (number < 0) {
        return a;
    }
    // higher count than array length
    int size = number < a.length ? number : a.length;
    int[] b = new int[size];
    System.arraycopy(a, 0, b, 0, size);
    for (int i = b.length - 1; i >= 0; i--) {
        a[b.length - 1 - i] = b[i];
    }
    return a;
}
公共静态int[]反向(int[]a,int编号){
//阴性病例
如果(数字<0){
返回a;
}
//大于数组长度的计数
整数大小=数字=0;i--){
a[b.长度-1-i]=b[i];
}
返回a;
}

数组对每个元素都有索引,因此上面的循环代码简单而有效。

如何反转整个数组(当N=数组长度时)?N是数组中的一个索引还是一个值?@klutt我认为他需要完全反转所有大小的子数组
4
什么是“输入中位数”?我投票结束这个问题,因为它是一个家庭作业问题,但它不包括迄今为止为解决这个问题所做工作的必要摘要,也没有描述在解决它时遇到的困难。非常感谢。这是我要找的。谢谢,你可以投票支持我的答案