Heim >Java >JavaBase >Detaillierte Erläuterung der Methode zur Beurteilung, ob es sich in Java um eine Zahl handelt

Detaillierte Erläuterung der Methode zur Beurteilung, ob es sich in Java um eine Zahl handelt

尚
Original
2019-12-03 09:54:134846Durchsuche

Detaillierte Erläuterung der Methode zur Beurteilung, ob es sich in Java um eine Zahl handelt

Java-Methode, um festzustellen, ob es sich um eine Zahl handelt: (Empfohlen: Java-Video-Tutorial)

1. Verwenden Sie reguläre Ausdrücke

Importieren Sie zunächst java.util.regex.Pattern und java.util.regex.Matcher

/**
     * 利用正则表达式判断字符串是否是数字
     * @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;
    }

2. Verwenden Sie die JAVA-eigene Funktion

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

3

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

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

5. Bestimmen Sie nacheinander, 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;
}

6

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

Weitere Java-Kenntnisse finden Sie in der Spalte

Java Basic Tutorial.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Methode zur Beurteilung, ob es sich in Java um eine Zahl handelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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