需要帮助通过代码对整数数组进行排序

MK1*_*MK1 -1 java arrays sorting

我一直在研究将数组列表中的整数排序的代码,但是我的代码仅返回2个数字,任何人都可以帮助我了解我在这里做错了什么。如何获得所有要显示的数字?我数组中的数字

  • ArrayList testNumbers = new ArrayList();
  • testNumbers.add(48);
  • testNumbers.add(3);
  • testNumbers.add(23);
  • testNumbers.add(99);

[48,3,23,99]。任何帮助将不胜感激。

public ArrayList<Integer> listSort(ArrayList<Integer> numbers) {

    // create variable to store max number
    int maxNumber = 0;

    // creates an array that will store the sorted numbers
    ArrayList<Integer> sortedIntArray = new ArrayList<Integer>();

    // loops through each number in the numbers arraylist
    for (int i = 0; i < numbers.size(); i++) {

        if (numbers.get(i) > maxNumber) {
            // set the number to the new max number
            maxNumber = numbers.get(i);

            // add current max number to sorted array
            sortedIntArray.add(maxNumber);

            // remove the max number from numbers array
            numbers.remove(numbers.get(i));

        }
    }



    return sortedIntArray;
}
Run Code Online (Sandbox Code Playgroud)

// sortedIntArray返回[48,99]

hom*_*ome 5

使用java.util.Collections.sort(List<T> list)。还是需要实现自己的排序算法?