首頁 > Java > java教程 > 主體

如何在 Java 中按特定列對 2D 字串陣列進行排序?

Linda Hamilton
發布: 2024-11-04 01:33:03
原創
318 人瀏覽過

How to Sort a 2D String Array by a Specific Column in Java?

按特定列對二維字串陣列進行排序

在Java 中,我們可能會遇到需要組織儲存在兩個數組中的資料的情況維(2D)數組。為了有效地完成這種排序,我們可以利用 Arrays.sort() 方法以及自訂比較器。

考慮以下範例:我們有一個二維字串數組,其中第一列表示時間戳,第二列表示時間戳列包含一條訊息。我們的目標是根據時間戳按升序對陣列進行排序。

為了實現這一點,我們可以定義一個實作 Comparator 介面的類別。此類別將提供比較數組中元素的邏輯:

<code class="java">class TimestampComparator implements Comparator<String[]> {
    @Override
    public int compare(String[] entry1, String[] entry2) {
        return entry1[0].compareTo(entry2[0]);
    }
}</code>
登入後複製

在此比較器中,我們從數組中的每個條目中提取時間戳值,並使用String.compareTo() 方法對它們進行比較。

比較器就位後,我們現在可以繼續排序:

<code class="java">Arrays.sort(data, new TimestampComparator());</code>
登入後複製

這裡,data 代表原始的二維陣列。

排序後,資料將是根據第一列中的時間戳進行組織。結果輸出將是:

2009.07.25 19:54 Message R
2009.07.25 20:01 Message F
2009.07.25 20:17 Message G
2009.07.25 20:24 Message A
2009.07.25 20:25 Message B
2009.07.25 20:30 Message D
2009.07.25 21:08 Message E
登入後複製

以上是如何在 Java 中按特定列對 2D 字串陣列進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板