簡體   English   中英

在 java 如何檢查輸入的第一個值是否為數字?

[英]In java How do I check that the first value of a input is a number?

我需要向用戶詢問一個帶字母的數字,但第一個值必須是一個數字,我該如何返回 true 呢?

if(SerieNumber.charAt(0) == )

我不知道要在那里添加什么

tl;博士

Character.isDigit( myString.codePointAt( 0 ) ) 

避免char

自 Java 2 以來, char類型一直是遺留的。作為 16 位值, char在物理上無法表示大多數字符。

代碼點

而是使用代碼點integer 數字。

int codePoint = myString.codePointAt( 0 ) ;  // Annoying zero-based index counting. So zero for first character. 

測試該代碼點是否分配給根據 Unicode 聯盟被視為數字的字符。

boolean isDigit = Character.isDigit( codePoint ) ;

使用正則表達式:

if (SerieNumber.matches("\\d.*")) {
    // first char is a digit
}

如果您需要允許來自任何語言的數字,請添加 unicode 標志:

if (SerieNumber.matches("(?U)\\d.*")) {
    // first char is a digit from any character set, eg 9, 九, 구, etc
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM