1 列による 2 次元配列のソート
Java では、特定の列に基づいて 2 次元配列をソートするのが一般的です配列の操作と並べ替え手法の理解が必要なタスクです。
問題ステートメント:
データを含む 2 次元配列が与えられ、最初の列はタイムスタンプと2 番目の列は文字列です。目的は、最初の列のタイムスタンプに基づいて配列を昇順に並べ替えることです。
実装の詳細:
効果的に並べ替えるには配列の場合、Java で配列をソートするのに非常に効率的な Arrays.sort() メソッドを利用します。並べ替え基準として、配列要素の最初の列のタイムスタンプを比較するカスタム Comparator 実装を定義します。
<code class="java">class TimestampComparator implements Comparator<String[]> { @Override public int compare(String[] a, String[] b) { return a[0].compareTo(b[0]); } }</code>
main メソッドでは、2 次元配列を作成し、データで初期化します。次に、カスタム コンパレーターを使用して並べ替えます:
<code class="java">String[][] data = {...}; Arrays.sort(data, new TimestampComparator());</code>
コード スニペット:
<code class="java">import java.util.Arrays; import java.util.Comparator; public class ArraySorter { public static void main(String[] args) { String[][] data = {...}; Arrays.sort(data, new Comparator<String[]>() { @Override public int compare(String[] a, String[] b) { return a[0].compareTo(b[0]); } }); for (String[] row : data) { System.out.println(row[0] + " " + row[1]); } } }</code>
出力:
ソートされた配列は次の形式で出力されます:
timestamp message
タイムスタンプは時系列の昇順に並べられます。
以上がJavaで二次元配列をタイムスタンプでソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。