Java - 检查字符串的ArrayList是否按字母顺序排列

标签 java arraylist sorting

我有一个名为 account 的 ArrayList,其中包含字符串。我正在尝试编写一个方法来检查它们是否按顺序排列,并根据它们是否按顺序返回 true 或 false。

你会怎么做呢?我已经尝试过使用 for 循环检查初始字符,但结果非常错误。我创建了一个新的 ArrayList 并将其设置为等于原始数组,然后对其进行排序并比较它们,但由于它们包含相同的数据,因此它总是返回 true。

这是一个额外的问题,因为我正在为字符串执行此操作,所以您将如何检查某些数字是否按升序/降序排列?通过相同的主体?

谢谢!

最佳答案

试试这个(当然,假设您想使用字符串的自然顺序来比较字符串):

String previous = ""; // empty string: guaranteed to be less than or equal to any other

for (final String current: thelist) {
    if (current.compareTo(previous) < 0)
        return false;
    previous = current;
}

return true;

这是因为 String实现Comparable<String> ,并且将使用字符串的自然顺序进行比较。

关于Java - 检查字符串的ArrayList是否按字母顺序排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8695531/

相关文章:

Java 异常 : Comparison method violates its general contract

java - 不知道如何在java中返回一个类

java - 在Core java中按升序对数组元素进行排序?

java - 关于Cloneable接口(interface)和应该抛出的异常的问题

java - 提取资源的相关子图

javascript - 检查对象是否为 null 元素

java - 按字母顺序从数组中插入排序字符串

bash - 计算文本文件中重复行数的更简单方法

java - 从 Windows 命令行键盘读取数据,无需将光标移动到下一行

java - ArrayList元素拒绝被移除