首頁 >Java >java教程 >如何有效判斷Java字串是否代表整數?

如何有效判斷Java字串是否代表整數?

Barbara Streisand
Barbara Streisand原創
2024-12-09 01:26:14532瀏覽

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

在 Java 中判斷字串是否代表整數

Java 沒有提供簡單的方法來檢查字串是否為整數。但是,有多種方法可以實現此目的:

樸素方法:

迭代字串並確保所有字元都是給定基數的有效數字。這是最有效的方法,因為它只檢查每個字元一次。

基於函式庫的方法:

使用 Java 的 Scanner 類別檢查字串是否可以解析為指定基數的整數。此方法比簡單方法更昂貴,但可以處理各種錯誤情況。

異常處理方法:

使用 Integer 類別的 parseInt 方法。如果解析成功,則該字串代表一個整數。但是,此方法會針對無效輸入引發異常,這可能是不可取的。

以下是簡單方法的範例實作:

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;
}

最終,要使用的最佳方法取決於效能要求以及是否首選異常處理。

以上是如何有效判斷Java字串是否代表整數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn