Collections.reverse方法不反转条目

car*_*lhf 0 java collections arraylist

我下面的代码应该接受用户的整数,然后以相反的顺序打印他们输入的任何整数。我没有收到任何错误,但是当我运行该程序时,整数并未反向打印。有人可以帮我找出原因吗?

import java.util.*;

public class ReverseDigits {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String response;

        System.out.println("Please enter a whole number.");
        response = sc.next();

        reverseDigit(response);
    }

    public static void reverseDigit(String digit) {
        ArrayList al = new ArrayList();
        al.add(digit);
        Collections.reverse(al);
        System.out.println("Your number in reverse order is: " + al);
    }

}
Run Code Online (Sandbox Code Playgroud)

Tun*_*aki 5

您误解了Collections.reverse。此方法将反转您提供的列表,而不是其内容。由于您使用只有一个元素的列表调用了此方法,因此结果将是相同的列表。

如果要反转字符串,请参考此问题

附带说明:不要使用像ArrayList这样的原始类型,这会带来麻烦。最好使用类型安全的方式ArrayList<String>