java判断一个字符串是否为数字型

清疚 2023-06-04 10:53 90阅读 0赞

摘自:https://blog.csdn.net/qq\_42133100/article/details/92158507

方法一:用JAVA自带的函数(只能判断正整数 )

  1. 2 public static boolean isNumeric(String str){
  2. 3 for (int i = str.length();--i>=0;){
  3. 4 if (!Character.isDigit(str.charAt(i))){
  4. 5 return false;
  5. 6 }
  6. 7 }
  7. 8 return true;
  8. 9 }

  

方法二:正则(推荐,速度最快)

  1. public static boolean isInteger(String str) {
  2. Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
  3. return pattern.matcher(str).matches();
  4. }

  

方法三:正则

  1. public static boolean isNumeric(String str){
  2. Pattern pattern = Pattern.compile("[0-9]*");
  3. return pattern.matcher(str).matches();
  4. }

  

方法四:正则

  1. public final static boolean isNumeric(String s) {
  2. if (s != null && !"".equals(s.trim()))
  3. return s.matches("^[0-9]*$");
  4. else
  5. return false;
  6. }

  

方法五:用ascii码

  1. public static boolean isNumeric(String str){
  2. for(int i=str.length();--i>=0;){
  3. int chr=str.charAt(i);
  4. if(chr<48 || chr>57)
  5. return false;
  6. }
  7. return true;
  8. }

  

方法六:采用强制类转换来判断一个字符串是否为数字 (有局限性,如果要判断是int型或double型,就必须要调整转换语句,但可以判断正负)

  1. try {
  2. //Integer num = Integer.valueOf(str);
  3. Double num2 = Double.valueOf(str);
  4. //System.out.println("Is Number!" + num);
  5. System.out.println("Is Number!" + num2);
  6. } catch (Exception e) {
  7. System.out.println("Is not Number!");
  8. }

  

方法七:采用正则表达式的方式来判断一个字符串是否为数字,这种方式判断面比较全面,可以判断正负、整数小数 (推荐)

  1. //?:0或1个, *:0或多个, +:1或多个
  2. Boolean strResult = str.matches("-?[0-9]+.?[0-9]*");
  3. if(strResult == true) {
  4. System.out.println("Is Number!");
  5. } else {
  6. System.out.println("Is not Number!");
  7. }

  

转载于:https://www.cnblogs.com/xinruyi/p/11518617.html

发表评论

表情:
评论列表 (有 0 条评论,90人围观)

还没有评论,来说两句吧...

相关阅读

    相关 如何判断一个字符串是否

    在Java编程开发中,我们经常需要判断一个字符串是否为空。这是因为在程序中,如果字符串为空,可能会导致程序出现异常或者逻辑错误。因此,判断一个字符串是否为空是非常重要的。接下来