精华内容
下载资源
问答
  • 判断string是否为数字

    千次阅读 2016-03-30 17:35:02
    1.用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = 0; i (); i++){ System.out.println(str.charAt(i)); if (!Character.isDigit(str.charAt(i))){ return false;
    1.用JAVA自带的函数
    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;
     }
    
    2.用正则表达式
    首先要import java.util.regex.Pattern 和 java.util.regex.Matcher
    public boolean isNumeric(String str){ 
       Pattern pattern = Pattern.compile("[0-9]*"); 
       Matcher isNum = pattern.matcher(str);
       if( !isNum.matches() ){
           return false; 
       } 
       return true; 
    }
    
    3.使用org.apache.commons.lang
    org.apache.commons.lang.StringUtils;
    boolean isNunicodeDigits=StringUtils.isNumeric("aaa123456789");
    http://jakarta.apache.org/commons/lang/api-release/index.html下面的解释:
    isNumeric
    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
     
    Parameters:
    str - the String to check, may be null 
    Returns:
    true if only contains digits, and is non-null
     
    上面三种方式中,第二种方式比较灵活。
     
    第一、三种方式只能校验不含负号“-”的数字,即输入一个负数-199,输出结果将是false;
     
    而第二方式则可以通过修改正则表达式实现校验负数,将正则表达式修改为“^-?[0-9]+”即可,修改为“-?[0-9]+.?[0-9]+”即可匹配所有数字。
    展开全文
  • 通过正则的方法去判断字字符串是否为数(包括... * 判断string是否为数字、整数、小数(这里没有考虑科学计数法的情况,如5e3,-1E-16) */ @Component public final class StrToNum { //判断数字(int + double +

    通过正则的方法去判断字字符串是否为数(包括整数和小数),本代码没有考虑科学计数法的字符串。

    import org.springframework.stereotype.Component;
    import java.util.regex.Pattern;
    
    /**
     *  判断string是否为数字、整数、小数(这里没有考虑科学计数法的情况,如5e3,-1E-16)
     */
    @Component
    public final class StrToNum {
    
        //判断数字(int + double + float)
        public boolean isNumber(String str) {
            if (str == null || "".equals(str)){
                return false;
            }
            Pattern pattern = Pattern.compile("^(-|\\+)?\\d+(\\.\\d+)?$");
            return pattern.matcher(str).matches();
        }
    
        //判断整数(int)
        public boolean isInteger(String str) {
            if (null == str || "".equals(str)) {
                return false;
            }
            Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
            return pattern.matcher(str).matches();
        }
    
        //判断浮点数(double和float)
        public boolean isDouble(String str) {
            if (null == str || "".equals(str)) {
                return false;
            }
            Pattern pattern = Pattern.compile("[+-]?[0-9]+\\.([0-9]+)"); // 之前这里正则表达式错误,现更正
            return pattern.matcher(str).matches();
        }
    }
    

    已经验证过代码大部分可用性,测试数据如下:

    public static void main(String[] args) {
            String[] strings = {"11111", "22.222", "22.22.22", ".2222", "-1111", "-222.222", "-.9999", "9999.", "-0.0000", "111s222", "222.a11", "090.0"};
            System.out.println("字符串    数字    整数    小数");
            for (String str: strings){
                System.out.println(str +": "+ strToNum.isNumber(str) + " " + strToNum.isInteger(str) + " " + strToNum.isDouble(str));
            }
        }
    
    展开全文
  • 检查字符串是否只包含Unicode数字。 *小数点不是Unicode数字,返回false。</P> <p> <代码> null <代码>将返回 false 。 *空字符串(“”)将返回 true </p> 方法实现:StringUtils...

    < P>检查字符串是否只包含Unicode数字。

    *小数点不是Unicode数字,返回false。</P>

     <p> <代码> null <代码>将返回 false 。

    *空字符串(“”)将返回 true </p>

    方法实现: StringUtils.class

       * <pre>
         * 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
         * </pre>

     *@ PARAM str是要检查的字符串,可能为空

    *@ 如果只包含数字,并且为非空 , 返回<code>true</code>

    需要注意的是如果 str = ""  (入参为空字符串的情况下) 返回的是true .(根据需求检查入参str = "" 的情况)

    public static boolean isNumeric(String str) {
            if (str == null) {
                return false;
            }
            int sz = str.length();
            for (int i = 0; i < sz; i++) {
                if (Character.isDigit(str.charAt(i)) == false) {
                    return false;
                }
            }
            return true;
        }

    展开全文
  • java 判断String变量是否为数字

    千次阅读 2016-12-01 11:42:26
    java 判断String变量是否为数字
    一、使用正则表达式:
    private boolean isNumeric(String str){
    		   Pattern pattern = Pattern.compile("[0-9]*$");
    		   Matcher isNum = pattern.matcher(str);
    		   if( !isNum.matches() ){
    		       return false;
    		   }
    		   return true;
    		}

    二、使用异常报错:

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

    三、判断ASCII码值
    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;
     }

    四、用JAVA自带的函数:

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

    方法一,个人认为比较好,使用灵活,正则表达式,可以修改,匹配各种想要的类型。
    展开全文
  • 判断String 是否数字或者整数

    千次阅读 2019-01-09 14:28:10
    包:org.apache.commons.lang.math.NumberUtils 判断是否是整数方法NumberUtils.isDigits(str) 判断是否数字NumberUtils.isNumber(nameOrId) 返回发都是boolean
  • /// /// 检测一个字符串是不是以汉字开始 /// /// 要检测的字符串 /// 是否为汉字开始 private bool isChinese(string str) { if ((int)str[0] > 0x4E00 && (int)str[0] ) { retur
  • C#判断一个string是否为数字

    千次阅读 2019-02-14 23:45:00
    方案二:正则表达式(推荐) using System.Text.Regular...public static bool IsNumeric(string value) { return Regex.IsMatch(value, @"^[+-]?\d*[.]?\d*$"); } public static bool IsInt(string value...
  • 判断String类型是否为数字

    千次阅读 2019-08-30 16:59:47
    public boolean isNumber(String str){ for (int i=0;i<str.length();i++){ if (!Character.isDigit(str.charAt(i))){//用java自带的函数 return false; } ...
  • C#判断一个String是否为数字类型

    千次阅读 2017-01-18 20:14:27
    C#判断一个String是否为数字类型  方案一:Try...Catch(执行效率不高) 复制代码 代码如下: private bool IsNumberic(string oText) {  try  {  int var1=Convert.ToInt32 (oText);  return true;...
  • 在实际应用的开发过程中,经常需要取出String数字,用来满足实际的应用场景,下面的代码实现了String是否包含数字是否数字、截取String中的数字、以及判断是否是汉字、截取String中的文字与数字的功能. ...
  • 判断String是否可以转换成数字

    千次阅读 2019-07-25 17:40:48
    org.apache.commons.lang3.math.NumberUtils; NumberUtils.isNum(s)
  • Java 判断string变量是否数字

    万次阅读 2019-03-07 16:22:39
    1.用正则表达式 首先要import java.util.regex.Pattern 和 java.util.regex.Matcher ... * 利用正则表达式判断字符串是否数字 * @param str * @return */ public boolean isNumeric(String...
  • 方案一:Try...Catch(执行效率不高) private bool IsNumberic(string oText) {  try  {  int var1=Convert.ToInt32 (oText);  return true;  }  catch  ...
  • 判断一个string是否数字开头

    千次阅读 2017-02-19 15:47:00
    public static void main(String[] args) { Pattern pattern =null; String content = "30.年前"; if(content.contains(".")){ pattern = Pattern.compile("^(\\d+.{0,1})(.*)");...
  • java判断String是否为汉字

    万次阅读 多人点赞 2017-12-27 20:16:28
    Java用的是Unicode 编码char 型变量的范围是0-65535 无符号的值,可以表示 65536个字符,基本上地球上的字符可被全部包括了汉字基本集中在[19968,40869]之间...数字:[0x30,0x39](或十进制[48, 57]) 小写字母:[0x61
  • [转载]java中如何判断String中的内容是否为数字? JavaBlog  可以用异常来做校验  Java代码  /**   * 判断字符串是否是整数   */   public static boolean isInteger(String ...
  • 方式一,通过字符转换数字类时是否发生异常可以判断 public boolean validate() { String dd="123.666"; boolean flag =true; try { new BigDecimal(dd); } catch (Exception e) {
  • 通过下面的方法可以在c++中判断str是否为整数。 bool isDegital(string str) { for (int i = 0;i &lt; str.size();i++) { if (str.at(i) == '-' &amp;&amp; str.size() &gt; 1) // 有可能出现...
  • 1.用正则表达式 首先要import java.util.regex.Pattern 和 java.util.regex.Matcher ... * 利用正则表达式判断字符串是否数字 * @param str * @return */ public boolean isNumeric(String str){ P...
  • 判断一个字符串数字之前,首先要分析这个字符串数字可能出现的情况 1、首位可能有符号,或者没有,^[-\\+]? 2、第二位必须是0-9的数字,[0-9] 3、第三位或者后几位可能有小数点“.”,或者没有,\\.? 4、有小数点...
  • C#中判断是否为数字

    千次阅读 2012-09-24 15:52:08
    c#判断string是否为数字 2008-01-25 09:09 有人提议用int.Parse(string)的方法,然后通过捕获异常来判断返回的值。更好的方法是用正则表达式: public int IsNumeric(string str) {  int i;  if(str != null...
  • 正则表达式首先要import java.util.regex.Pattern 和 java.util.regex.Matcherpublic boolean isNumeric(String str){ Pattern pattern = Pattern.compile("[0-9]*"); Matcher isNum = pattern.matcher
  • 自己方便查看,无其他用途 ...1.用正则表达式 首先要import java.util.regex.Pattern 和 java.util.regex.Matcher ...* 利用正则表达式判断字符串是否数字 * @param str * @return / public boolean isNu...
  • Java: 如何判断string or char是否数字

    万次阅读 2007-05-10 23:22:00
    1、判断a string是否数字 public boolean isNumeric(String checkStr) { try { Integer.parseInt(checkStr); return true; // Did not throw, must be a number } catch (NumberFormatE
  • java中判断字符串是否为数字的方法: 1.用JAVA自带的函数 public static boolean isNumeric(String str){  for (int i = 0; i  System.out.println(str.charAt(i));  if (!Character.isDigit(str.charAt(i...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 441,573
精华内容 176,629
关键字:

判断string是否为数字