Java 在类中反转数组不会改变元素的顺序

Java 在类中反转数组不会改变元素的顺序,java,Java,我想通过使用OOP并在同一个数组上执行操作来反转Java数组中元素的顺序。到目前为止,我已经做了以下工作: public class Array{ private int count; private int[] v; public Array(){ } public Array(int n){ v=new int[n]; count=0; } public int[] getV() {

我想通过使用OOP并在同一个数组上执行操作来反转Java数组中元素的顺序。到目前为止,我已经做了以下工作:

public class Array{
    private int count;
    private int[] v;
    public Array(){
        
    }
    public Array(int n){
        v=new int[n];
        count=0;
    }
    public int[] getV() {
        return v;
    }

    public void setV(int[] v) {
        this.v = v;
    }
    public void print(){
        for (int i=0;i<count;i++){
            System.out.println(v[i]);
        }
    }
    public void input(int n){
        if (count>=v.length){
            System.out.println("full");
        }
        else{
            v[count]=n;
            count++;
        }
    }
    public Array reverse(){
        int temp;
        int countT=count-1;
        Array a = new Array;
        for (int i=0;i<count;i++){
            temp=v[i];
            v[i]=v[countT];
            v[countT]=temp;
            countT--;
        }
        a.setV(v);
        return a;
}


//main
        Array a=new Array(5);
        Array temp;
        int min, max,valor;
        min=1;
        max=100;
        for (int i=10;i<=50;i=i+10){
            value=(int)(Math.random()*(max-min)+1);
            a.input(value);
        }
        temp=a.reverse();
        temp.print();
iteration i = 0 : {6,2,3,4,5,1}
iteration i = 1 : {6,5,3,4,2,1}
iteration i = 2 : {6,5,4,3,2,1}
公共类数组{
私人整数计数;
私人互联网【】v;
公共数组(){
}
公共数组(int n){
v=新整数[n];
计数=0;
}
公共int[]getV(){
返回v;
}
公共无效setV(int[]v){
这个,v=v;
}
公开作废印刷品(){
对于(int i=0;i=v.length){
系统输出打印项次(“完整”);
}
否则{
v[计数]=n;
计数++;
}
}
公共数组反向(){
内部温度;
int countT=count-1;
数组a=新数组;

对于(int i=0;i而言,错误在于从两个方向(从左到右和从右到左)迭代整个数组:

正如您所看到的,它已经处于相反的状态,但您继续:

iteration i = 3 : {6,5,3,4,2,1}
iteration i = 4 : {6,2,3,4,5,1}
iteration i = 5 : {1,5,4,3,2,6}
因此,基本上你撤销了你所做的。因此,为什么你需要迭代直到
count/2

iteration i = 0 : {6,2,3,4,5,1}
iteration i = 1 : {6,5,3,4,2,1}
iteration i = 2 : {6,5,4,3,2,1}
iteration i = 3 : {6,5,3,4,2,1}
iteration i = 4 : {6,2,3,4,5,1}
iteration i = 5 : {1,5,4,3,2,6}