logo

Javaでリストを並べ替える方法

次のメソッドを使用してリストを並べ替えることができます。

文字列をJavaの整数に変換
  • stream.sorted() メソッドの使用
  • Comparator.reverseOrder() メソッドの使用
  • Comparator.naturalOrder() メソッドの使用
  • Collections.reverseOrder() メソッドの使用
  • Collections.sort() メソッドの使用

Javaストリームインターフェース

Java Stream インターフェースには、リストをソートするための 2 つのメソッドが用意されています。

sorted() メソッド

ストリーム インターフェイスには、リストを並べ替えるためのsorted() メソッドが用意されています。に存在する Stream インターフェイスで定義されます。 java.util パッケージ 。自然な順序に従ってソートされたストリームを返します。要素が比較できない場合、java.lang.ClassCastException がスローされます。メソッドのシグネチャは次のとおりです。

 Stream sorted() 

パラメータ

T: ストリーム要素の一種です。

Java Stream.sorted(コンパレータ コンパレータ)

また、提供されたコンパレータに従ってソートされたストリームも返します。順序付けられたストリームでは安定しています。メソッドのシグネチャは次のとおりです。

 Stream sorted(Comparator comparator) 

パラメーター

  • T はストリーム要素のタイプです。
  • 要素を比較するために使用されるコンパレータ

次の例では、次のメソッドを使用しました。

文字列Javaを追加
  • Java 8 では、stream() はオブジェクトのコレクションを処理するために使用される API です。
  • collect() メソッドは、ストリームから要素を受信し、コレクションに格納するために使用されます。
  • toList() は、すべての入力要素を出現順にリストに収集するコレクターを返します。

 import java.util.*; import java.util.stream.*; public class SortListExample1 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('Tanu', 'Kamal', 'Suman', 'Lucky', 'Bunty', 'Amit'); List sortedList = slist.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

出力:

Javaでリストを並べ替える方法

Java Comparator.reverseOrder() メソッド

reverseOrder()はjava.utilパッケージで定義されているComparatorインタフェースのメソッドです。このメソッドは、自然な順序の逆を強制するコンパレータを返します。 null を比較すると NullPointerException がスローされます。メソッドのシグネチャは次のとおりです。

 static <t extends comparable> Comparator reverseOrder() </t>

Comparable も java.lang パッケージに属するインターフェイスです。

パラメーター

T: 比較される要素の比較可能なタイプ。

 import java.util.*; import java.util.stream.Collectors; public class SortListExample2 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList(&apos;78&apos;, &apos;a&apos;, &apos;m&apos;, &apos;b&apos;, &apos;z&apos;, &apos;c&apos;, &apos;12&apos;, &apos;l&apos;, &apos;1&apos;); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

出力:

Javaでリストを並べ替える方法

Java Comparator.naturalOrder()

このメソッドは、Comparable オブジェクトを自然な順序で比較するコンパレータを返します。返された比較対象はシリアル化可能です。 null を比較すると、NullPointerException がスローされます。これは Java 8 からのものです。メソッドのシグネチャは次のとおりです。

 Static <t extends comparable> Comparator naturalOrder() </t>
  • このメソッドは要素を自然な順序 (昇順) で並べ替えます。
  • 存在する場合は先頭に null を置きます。
  • リストに小文字と大文字の両方が含まれている場合、大文字の要素が自然な順序で最初に配置され、その後に小文字が自然な順序で配置されます。

パラメーター

T: 比較対象の要素の比較タイプ。

 import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList(&apos;Russia&apos;, &apos;India&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;Ghana&apos;); List country1 = Arrays.asList(&apos;Russia&apos;,&apos;india&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;ghana&apos;); System.out.println(country); //prints the same list as we define country.sort(String.CASE_INSENSITIVE_ORDER); //sorts the list in case insensitive order System.out.println(country1); country.sort(Comparator.naturalOrder()); //sorts list in ascending order System.out.println(country); //sorts list in ascending order (null, capital letter and small letter) country1.sort(Comparator.naturalOrder()); System.out.println(country1); } } 

出力:

Javaでリストを並べ替える方法

Java Collections.reverseOrder() メソッド

java.langパッケージに属するJava Collectionsクラスのメソッドです。自然な順序の逆を強制するコンパレータを返します。メソッドのシグネチャは次のとおりです。

 public static Comparator reverseOrder() 

パラメーター

サルマン・カーン・カーンの年齢

コンパレーターによって比較されるオブジェクトのクラス。

 import java.util.Arrays; import java.util.Collections; import java.util.List; public class SortListExample4 { public static void main(String args[]) { List list = Arrays.asList(10,1,-20,40,5,-23,0); Collections.sort(list, Collections.reverseOrder()); System.out.println(list); } } 

出力:

Javaでリストを並べ替える方法

Java Collections.sort() メソッド

Collections クラスには、リストを並べ替えるための 2 つのメソッドがあります。

sort() メソッド

sort() メソッドは、要素の自然な順序に従って、リストを昇順に並べ替えます。メソッドのシグネチャは次のとおりです。

 public static <t extends comparable> void sort() (List list) </t>

パラメーター

T: 型パラメータです。

list: ソートするリスト。

反応中のテーブル

Collections.sorts() メソッドの別の例を見てみましょう。

 import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add(&apos;m&apos;); sList.add(&apos;k&apos;); sList.add(&apos;a&apos;); sList.add(&apos;p&apos;); sList.add(&apos;d&apos;); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(&apos; &apos;+str); } } 

出力:

Javaでリストを並べ替える方法