Javaは、数字の文字列かどうかを決定します

抜粋します。https://blog.csdn.net/qq_42133100/article/details/92158507

 

方法:JAVAの組み込み関数は、(のみ正の整数を決定します)

2 {パブリック静的ブールISNUMERIC(文字列str)
3(INT I = str.length()は; - I> = 0;){   
4 IF(Character.isDigit(str.charAt(I))!){ 
5リターン偽; 
6} 
7} 
8リターン真。
9}

  

方法2:通常の(最速、推奨)

パブリック静的ブールisInteger(String str)文字{   
        柄パターン= Pattern.compile( "^ [ - \\ +] [\\ D] * $?");  
        リターンpattern.matcher(STR).matches();  
}

  

方法3:定期的

パブリック静的ブールISNUMERIC(文字列str){ 
    パターン・パターン= Pattern.compile( "[0-9] *")。
    リターンpattern.matcher(STR).matches();   
}

  

方法4:定期的

公共の最終静的ブールISNUMERIC(文字列S){ 
    場合(S = NULL && "!!"に等しい(s.trim())。)
        リターンs.matches( "^ [0-9] * $"); 
    それ以外
        はfalseを返します。
}  

  

方法5:付きASCIIコード 

パブリック静的ブールISNUMERIC(文字列str){ 
    ため(INT I = str.length(); - I> = 0;){ 
        int型CHR = str.charAt(I)。
        (CHR <48 || CHR> 57)であれば
            falseを返します。
    } 
   trueを返します。
}  

  

6:数字の文字列は(制限で、int型やdouble型かどうかを判断するために、変換ステートメントを調整する必要があるが、正または負判断することができます)かどうかを判断するために強制的にクラススイッチ

試す{   
        //整数NUM = Integer.valueOf(STR)。  
        ダブルnum2の=は、Double.valueOf(STR);  
        //System.out.println("Is番号「+数値)!;  
        System.out.println( "ナンバーです!" + num2の);  
}キャッチ(例外e){   
        System.out.printlnは( "数値ではありません!");  
}

  

方法7:この方法の裁判官はかなり包括的、数に文字列かどうかを判断するための正規表現の仕方、正と負の、10進整数(推奨)に基づきます

//:0または1であり、*は0以上、+ 1またはそれ以上の  
 ブールstrResult = str.matches( " - [0-9] + [0-9] *?。?");      
 IF (== trueにstrResult){   
            System.out.printlnはは( "ナンバーです!");   
        }他{   
            System.out.printlnはは( "ナンバーではありません!");   
        }

  

おすすめ

転載: www.cnblogs.com/xinruyi/p/11518617.html