Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Menentukan Secara Berkesan jika Rentetan Java Mewakili Integer?

Bagaimanakah Saya Boleh Menentukan Secara Berkesan jika Rentetan Java Mewakili Integer?

Barbara Streisand
Lepaskan: 2024-12-09 01:26:14
asal
560 orang telah melayarinya

How Can I Effectively Determine if a Java String Represents an Integer?

Tentukan jika String Mewakili Integer dalam Java

Java tidak menyediakan kaedah mudah untuk menyemak sama ada rentetan ialah integer. Walau bagaimanapun, terdapat pelbagai pendekatan untuk mencapai ini:

Kaedah Naif:

Lelaran melalui rentetan dan pastikan semua aksara adalah digit yang sah untuk radix yang diberikan. Ini ialah kaedah yang paling cekap kerana ia memeriksa setiap aksara sekali sahaja.

Kaedah Berasaskan Perpustakaan:

Gunakan kelas Pengimbas Java untuk menyemak sama ada rentetan itu boleh dihuraikan sebagai integer bagi radix yang ditentukan. Kaedah ini lebih mahal daripada pendekatan naif tetapi mengendalikan pelbagai keadaan ralat.

Kaedah Pengendalian Pengecualian:

Gunakan kaedah parseInt bagi kelas Integer. Jika penghuraian berjaya, rentetan mewakili integer. Walau bagaimanapun, kaedah ini memberikan pengecualian untuk input tidak sah, yang mungkin tidak diingini.

Berikut ialah contoh pelaksanaan kaedah naif:

public static boolean isInteger(String s) {
    return isInteger(s, 10);
}

public static boolean isInteger(String s, int radix) {
    if (s.isEmpty()) {
        return false;
    }
    for (int i = 0; i < s.length(); i++) {
        if (i == 0 && s.charAt(i) == '-') {
            if (s.length() == 1) {
                return false;
            } else {
                continue;
            }
        }
        if (Character.digit(s.charAt(i), radix) < 0) {
            return false;
        }
    }
    return true;
}
Salin selepas log masuk

Akhirnya, kaedah terbaik untuk digunakan bergantung pada keperluan prestasi dan sama ada pengendalian pengecualian diutamakan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Secara Berkesan jika Rentetan Java Mewakili Integer?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan