Heim > Java > JavaBase > So ermitteln Sie, ob es sich in Java um eine Zahl handelt

So ermitteln Sie, ob es sich in Java um eine Zahl handelt

Freigeben: 2019-11-20 15:31:00
Original
13869 Leute haben es durchsucht

So ermitteln Sie, ob es sich in Java um eine Zahl handelt

So ermitteln Sie, ob es sich um eine Zahl in Java handelt:

1. Verwenden Sie reguläre Ausdrücke

/**
     * 利用正则表达式判断字符串是否是数字
     * @param str
     * @return
     */
    public boolean isNumeric(String str){
           Pattern pattern = Pattern.compile("[0-9]*");
           Matcher isNum = pattern.matcher(str);
           if( !isNum.matches() ){
               return false;
           }
           return true;
    }
Nach dem Login kopieren

Verwenden Sie die JAVA-eigenen Funktionen

public static boolean isNumeric(String str)
{
  for (int i = 0; i < str.length(); i++)
  {  
    System.out.println(str.charAt(i));
    if (!Character.isDigit(str.charAt(i)))
    {
        return false;
      }
  }
  return true;
}
Nach dem Login kopieren

3. Verwenden Sie org.apache.commons.lang

org.apache.commons.lang.StringUtils;

boolean isNunicodeDigits=StringUtils.isNumeric("aaa123456789");


http://jakarta.apache.org/commons/lang/api-release/index.html下面的解释:

public static boolean isNumeric(String str)Checks if the String contains only unicode digits. A decimal point is not a unicode digit and returns false.

null will return false. An empty String ("") will return true.

StringUtils.isNumeric(null)   = false

StringUtils.isNumeric("")     = true

StringUtils.isNumeric(" ")   = false

StringUtils.isNumeric("123") = true

StringUtils.isNumeric("12 3") = false

StringUtils.isNumeric("ab2c") = false

StringUtils.isNumeric("12-3") = false

StringUtils.isNumeric("12.3") = false
Nach dem Login kopieren

4. Bestimmen Sie den ASCII-Codewert

public static boolean isNumeric0(String str)
{  
  for(int i=str.length();--i>=0;)
  {
     int chr=str.charAt(i);
     if(chr<48 || chr>57)
        return false;
  }
  return true;
 }
Nach dem Login kopieren

5. Bestimmen Sie, ob die Zeichen in str 0-9 sind

public static boolean isNumeric3(String str)
{
  final String number = "0123456789";
  for(int i = 0;i < number.length; i ++)
  {
   if(number.indexOf(str.charAt(i)) == -1)
     {  
        return false;  
     }  
  }  
  return true;
}
Nach dem Login kopieren

6. NumberFormatException abfangen

public static boolean isNumeric00(String str)
{
  try{
     Integer.parseInt(str);
     return true;
  }catch(NumberFormatException e)
  {
   System.out.println("异常:\"" + str + "\"不是数字/整数...");
   return false;
  }
}
Nach dem Login kopieren

Für weitere Java-Kenntnisse beachten Sie bitte das Java-Grundlagen-Tutorial.

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob es sich in Java um eine Zahl handelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage