English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java フロー制御

Java 配列

Java 面向オブジェクト(I)

Java 面向オブジェクト(II)

Java 面向オブジェクト(III)

Java 예외 처리

Java リスト(List)

Java Queue(キュー)

Java Map集合

Java Set集合

Java 入出力(I/O)

Java Reader/Writer

Java 他のトピック

Javaプログラムで辞書順に要素を並べ替え

Java 예제 모든 것

このプログラムでは、forループを使用して、Javaを使用する場合辞書順に要素を並べ替える方法を学びます。

例:辞書順に文字列を並べ替えるプログラム

public class Sort {
    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

위의 프로그램에서 정렬할5단어 목록이 변수 word에 저장됩니다.

그런 다음, 우리는 각 단어(words [i])를 순회하며, 배열에서 이후의 모든 단어(words [j])와 비교합니다. 이는 문자열의 compareTo() 메서드를 사용하여 완성됩니다.

compareTo()의 반환 값이 0보다 크다면, 위치를 교환해야 합니다. 즉, word [i]가 word [j] 다음에 위치해야 합니다. 따라서, 각 이터레이션에서, 단어 [i]는 가장 일찍 등장하는 단어를 포함하고 있습니다.

실행 단계
이터레이션초기 단어ijwords[]
1{ "Ruby", "C", "Python", "Java" }01{ "C", "Ruby", "Python", "Java" }
2{ "C", "Ruby", "Python", "Java" }02{ "C", "Ruby", "Python", "Java" }
3{ "C", "Ruby", "Python", "Java" }03{ "C", "Ruby", "Python", "Java" }
4{ "C", "Ruby", "Python", "Java" }12{ "C", "Python", "Ruby", "Java" }
5{ "C", "Python", "Ruby", "Java" }13{ "C", "Java", "Ruby", "Python" }
최종{ "C", "Java", "Ruby", "Python" }23{ "C", "Java", "Python", "Ruby" }

 

Java 예제 모든 것