用于递归反转数组的Java程序

时间:2013-11-05 23:14:10

标签: java arrays recursion reverse

我应该编写一个程序来递归地反转数组中的数字。此时我真的不太了解代码。这是我到目前为止所做的。

这是反方法本身:

  public static void reverse(int[] array, int i, int j)
  {
    if (i < j)
    {
      int temp = array[i];
      array[i] = array[j];
      array[j] = temp;
      reverse(array, ++i, --j);

我不确定这是否正确。然后我有主要的方法。

  public static void main(String[] args)
  {
   Scanner input = new Scanner(System.in);
   System.out.println("Enter size of the array");
   int n = input.nextInt();
   int[] array = new int[n];

   for (int i =0; i <array.length; i++)
   {
     System.out.println("Enter number to be inputed into array.");
     array[i] = input.nextInt();

   }
    System.out.println(array);
  }

它没有正确打印并在文本中打印数字和字母,我认为它应该是数组。

1 个答案:

答案 0 :(得分:2)

System.out.println(array);更改为:

System.out.println(Arrays.toString(array));

然后您可以查看您的方法是否正确反转。目前,您不打印数组的内容,只打印数组所在的内存地址。