在 Java 中,在處理複雜表達式時會出現識別字串陣列中整數的問題。在這裡,我們將探索確定給定字串是否符合整數的方法。
一個簡單的方法是遍歷字串,驗證每個字元是否是有效數字指定的基數。這確保了每個元素都受到仔細審查。然而,出於實際目的,它提供了最佳效率:
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庫提供了無異常機制:
public static boolean isInteger(String s, int radix) { Scanner sc = new Scanner(s.trim()); if (!sc.hasNextInt(radix)) { return false; } // Ensures there's no remaining data after extracting the integer sc.nextInt(radix); return !sc.hasNext(); }
對於那些採取輕鬆方法的人來說,以下有問題的技術使用了異常處理:
public static boolean isInteger(String s) { try { Integer.parseInt(s); } catch (NumberFormatException | NullPointerException e) { return false; } // Success if no exceptions occurred return true; }
綜上所述,在Java中判斷一個String是否代表整數需要仔細考慮效率和實作風格。所討論的方法為您提供了針對不同場景的多種選項。
以上是如何有效率地判斷Java字串是否代表整數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!