Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Mencapai Perbandingan Rentetan Semulajadi di Jawa?

Bagaimanakah Saya Boleh Mencapai Perbandingan Rentetan Semulajadi di Jawa?

DDD
Lepaskan: 2024-11-04 06:32:01
asal
596 orang telah melayarinya

How Can I Achieve Natural String Comparison in Java?

Perbandingan Rentetan Asli di Jawa: Adakah Ia Dibina Dalam?

Kelas Rentetan Java dan Kelas Pembanding tidak menyokong perbandingan rentetan semula jadi secara langsung, yang mengutamakan susunan yang boleh dibaca manusia berbanding susunan leksikal. Ini menjadi sangat penting apabila membandingkan rentetan versi atau nama fail yang mengandungi corak angka yang kompleks.

Untuk menangani keperluan ini, perpustakaan luaran menyediakan pelaksanaan tersuai. Satu pilihan popular ialah NaturalOrderComparator daripada projek Cougaar. Ia mematuhi satu set peraturan yang menentukan susunan semula jadi rentetan, seperti mempertimbangkan "10" lebih besar daripada "5" walaupun tertib abjadnya.

Berikut ialah contoh coretan Java yang menggunakan NaturalOrderComparator:

<code class="java">import org.cougaar.util.Comparisons;
import java.util.Arrays;

public class NaturalStringComparison {

    public static void main(String[] args) {
        String[] strings = {"image1.jpg", "image9.jpg", "image10.jpg", "1.2.9.1", "1.2.10.5"};

        // Sort using natural order
        Arrays.sort(strings, new Comparisons.NaturalOrderComparator());

        // Expected output:
        // [image1.jpg, image9.jpg, image10.jpg, 1.2.9.1, 1.2.10.5]
        System.out.println(Arrays.toString(strings));
    }
}</code>
Salin selepas log masuk

Dengan menggunakan perpustakaan luaran ini, anda boleh mencapai perbandingan rentetan semula jadi dengan mudah dalam program Java anda tanpa mencipta semula roda. Ia membantu mengekalkan susunan rentetan yang dimaksudkan, menjadikannya sesuai untuk pelbagai senario di mana pengisihan boleh dibaca manusia dikehendaki.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencapai Perbandingan Rentetan Semulajadi di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan