【问题标题】:Array sort reverse order. Cannot find symbol [duplicate]数组排序倒序。找不到符号[重复]
【发布时间】:2026-01-22 05:45:01
【问题描述】:

我正在尝试创建一个数组以相反的顺序打印所有内容。我收到此错误:

错误:side535Opg15.java:13:错误:找不到符号
数组(mArray.reverseOrder());
符号:方法 reverseOrder()
位置:int[] 类型的变量 mArray
1 个错误

这是我的代码:

import java.util.*;

public class side535Opg15{

   public static void main(String[] args){

   int[] a1 = {2,7,6,5,1,9};

   int[] mArray = printBackwards(a1);
   System.out.println(Arrays.toString(mArray));
   Arrays.sort(mArray);
   System.out.println(Arrays.toString(mArray));
   Arrays.sort(mArray.reverseOrder());
   System.out.println(Arrays.toString(mArray));

   }

   public static int[] printBackwards(int[] a1){
      int[] aFinal = new int[a1.length];
      for (int i = 0; i < a1.length; i++){
      aFinal[i]=a1[i];

      }
      return aFinal;
   }
}

【问题讨论】:

标签: java arrays reverse


【解决方案1】:

您没有编写 reverseOrder() 方法,这就是您收到此错误的原因。

【讨论】:

  • 这不是问题。好吧,从技术上讲是这样,但是您如何建议 OP 为不可变的 java.lang 类编写方法?如果 OP 想要以相反的顺序对数组进行排序,在 Java 中有一种方法可以做到,并且不涉及为 array 编写方法
  • 你可以实现比较器接口来提供排序逻辑。
  • 例如:Arrays.sort(mArray,Comparator).
  • 非常感谢。但是再一次,以元素的逆自然顺序对数组进行排序不需要实现 Comparator