跳到主要内容

Java程序按字典顺序排列元素

要理解这个示例,您应该了解以下 Java 编程 主题:

示例:按字典顺序排序字符串

class Main {
public static void main(String[] args) {

String[] words = { "Ruby", "C", "Python", "Java" };

for(int i = 0; i < 3; ++i) {
for (int j = i + 1; j < 4; ++j) {

if (words[i].compareTo(words[j]) > 0) {

// 交换 words[i] 和 words[j]
String temp = words[i];
words[i] = words[j];
words[j] = temp;
}
}
}

System.out.println("按字典顺序排列:");

for(int i = 0; i < 4; i++) {
System.out.println(words[i]);
}
}
}

输出

按字典顺序排列:
C
Java
Python
Ruby

在上述示例中,我们创建了一个名为 wordsString 数组。该数组包含 4 个元素。

这里,我们使用

  • for 循环来访问和比较每个数组元素
  • compareTo() 方法来进行比较

由于我们正在按字典(字典)顺序排序元素,如果第一个元素在字典中排在第二个元素之后,我们就交换元素。

以下是每次迭代中元素的比较和交换情况。

初始 wordsij比较words[]
{ "Ruby", "C", "Python", "Java" }01Ruby 和 C{ "C", "Ruby", "Python", "Java" }
{ "C", "Ruby", "Python", "Java" }02C 和 Python{ "C", "Ruby", "Python", "Java" }
{ "C", "Ruby", "Python", "Java" }03C 和 Java{ "C", "Ruby", "Python", "Java" }
{ "C", "Ruby", "Python", "Java" }12Ruby 和 Python{ "C", "Python", "Ruby", "Java" }
{ "C", "Python", "Ruby", "Java" }13Python 和 Java{ "C", "Java", "Ruby", "Python" }
{ "C", "Java", "Ruby", "Python" }23Ruby 和 Python{ "C", "Java", "Python", "Ruby" }