在java中反转数组的元素

时间:2017-02-02 04:49:32

标签: java

public class Solution {

public static void main(String []args) {
    Scanner in = new Scanner(System.in);
    int numberOfValues = in.nextInt();
    int valueArray[] = new int[numberOfValues];
    int sizeOfArray = valueArray.length; 

    for(int i=0; i < sizeOfArray; i++)
        valueArray[i]=in.nextInt();
   // System.out.print(valueArray.length);
    if(sizeOfArray%2==0)
        {
        //for(i=0,j=valueArray.length-1;i<(sizeOfArray/2)&&j>((sizeOfArray/2)+1);i++,j--)
        for(int i=0,j=sizeOfArray-1;i<sizeOfArray/2;i++,j--)
            {               
                int temp = valueArray[i];
                temp = valueArray[j];
                valueArray[j]=temp;
            }

        }
     for(int i=0; i < sizeOfArray; i++)
        System.out.print(valueArray[i]+" ");
    }
}

帮我解决这个问题。我无法得到颠倒的元素

示例输出: 4 1 4 3 2

你的输出(标准输出)

1 4 3 2

预期产出

2 3 4 1

编译器消息

错误答案

1 个答案:

答案 0 :(得分:1)

int temp = valueArray[i];
temp = valueArray[j];

您只需连续两次设置相同的变量。这通常是你在这些方面做错事的一个好兆头。我想你想在第二行设置valueArray[i]