Java での文字列の並べ替えは、Java ライブラリ内で直接メソッドを使用して文字列を並べ替えることができる組み込みの Java 機能ではありませんが、Java には Arrays.sort を使用して要素の配列を並べ替える手法が提供されています。 Java ライブラリによって提供されるいくつかの異なるメソッドを使用すると、Java で簡単に並べ替えることができ、文字列の並べ替えには Java アプリケーションでさまざまな使用例があります。
無料ソフトウェア開発コースを始めましょう
Web 開発、プログラミング言語、ソフトウェア テスト、その他
これには、開発者がユースケースに応じて使用できる 2 つの主要なテクニックがあります。
これは非常にシンプルで簡単なテクニックです。 Java で要素の配列を並べ替える方法と同様の方法と同様のロジックが適用されます。
この手法を実装するための手順と並べ替えの例を以下に示します。
例:
コード:
import java.util.Arrays; import java.util.Scanner; public class SortString { public static void main(String args[]) { Scanner scanner = new Scanner(System.in); System.out.println("Input String Value which should be sorted : "); String inputString = scanner.nextLine(); char arrayOfCharacters[] = inputString.toCharArray(); // Step 1 Arrays.sort(arrayOfCharacters); // Step 2 String sortedString = new String(arrayOfCharacters); // Step 3 System.out.println("Before Sorting : " + inputString); System.out.println("After Sorting : " + sortedString); } }
出力:
制限事項:
例:
出力:
この手法は主に、入力文字列に大文字と小文字が混在する可能性がある場合に使用されます。これは上記のような単純な手法ではなく、もう少しコーディングが必要です。 Java が提供する同じ配列ソート手法を使用しますが、それに加えて、文字列内の各文字を比較するのに役立つコンパレーターも使用します。
この手法を実装するための手順と、Java でのこのタイプの文字列ソートの例を以下に示します。
例:
コード:
import java.util.Arrays; import java.util.Scanner; import java.util.Comparator; public class SortString { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Input a String Value which should be sorted : "); String inputString = scanner.nextLine(); Character arrayOfCharacters[] = new Character[inputString.length()]; for (int i = 0; i < inputString.length(); i++) { arrayOfCharacters[i] = inputString.charAt(i); // Step 1 } Arrays.sort(arrayOfCharacters, new Comparator<Character>(){ // Step 2 @Override public int compare(Character c1, Character c2) { return Character.compare(Character.toLowerCase(c1), Character.toLowerCase(c2)); } }); StringBuilder outputString = new StringBuilder(arrayOfCharacters.length); for (Character c : arrayOfCharacters) outputString.append(c.charValue()); // Step 3 System.out.println("Before Sorting : " + inputString); System.out.println("After Sorting considering casing: " + outputString.toString()); } }
出力:
制限事項:
この手法は、コード行が最小限で、Java 8 ストリーム機能と Java 8 のみにインラインで提供される String.chars メソッドを使用する新しい手法です。したがって、この手法を適用するときは、Java アプリケーションが主に入力文字列に大文字だけでなく小文字も混在する可能性がある場合に使用されることを確認してください。これは上記のような単純な手法ではなく、もう少しコーディングが必要です。 Java が提供する同じ配列ソート手法を使用しますが、それに加えて、文字列内の各文字を比較するのに役立つコンパレーターも使用します。
Java での文字列の並べ替えは非常に簡単で、さまざまなアプローチが用意されており、開発者はアプリケーションの要件に応じてこれらのいずれかを使用できます。これは、2 ライナー コードからまったく新しい並べ替えメソッドの作成まで多岐にわたります。また、大文字と小文字を無視して文字列を並べ替えることもできます。
以上がJavaでの文字列のソートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。