判断一个字符串是否纯数字——Character类

一共三种方法判断一个字符串是否是纯数字

package com.jokin.learn.Jdk18;

import com.google.common.base.Strings;

/**
 */
public class isNumber {

    public static void main (String[] a){
        boolean re=  new isNumber().isNum2("123456778");
        System.out.println(re);
    }

    /**
     * 用java自带的char处理方法(推荐)
     * @param s
     * @return
     */
    public boolean isNum(String s){
        if(Strings.isNullOrEmpty(s)){
            return false;
        }
        //遍历String的方式一
        /*char[] c= s.toCharArray();
        for(int i=0;i<c.length;i++){

            boolean t= Character.isDigit(c[i]);
            if(!t){
                return false;
            }
        }*/
        //遍历String的方式二
        for (int i = 0; i < s.length(); i++) {
            char c= s.charAt(i);
            boolean t= Character.isDigit(c);
            if(!t){
                return false;
            }
        }
        return true;
    }

    /**
     * 用ascii码(不推荐)
     * @param s
     * @return
     *
     * 26个字母对应的
     * 大写:
     * A → 65,B → 66,C → 67,D → 68,E → 69,F → 70,G → 71,H → 72,I → 73,J → 74,K → 75,L → 76,M → 77,N → 78,O → 79,
     * P → 80,Q → 81,R → 82,S → 83,T → 84,U → 85,V → 86,W → 87,X → 88,Y → 89,Z → 90
     * 小写:
     * a → 97,b → 98,c → 99,d → 100,e → 101,f → 102,g → 103,h → 104,i → 105,j → 106,k → 107,l → 108,
     * m → 109,n → 110,o → 111,p→ 112,q → 113,r → 114,s → 115,t → 116,u → 117,v → 118,w → 119,x → 120,y → 121,z → 122
     */
    public boolean isNum2(String s){
        char[] c= s.toCharArray();
        for(int i=0;i<c.length;i++){
            int temp=c[i]-'0';
           System.out.println(temp);
           if(temp>=10||temp<0){
               return false;
           }
        }

        return true;
    }

    /**
     * 用catch异常(强烈不推荐,该方法万万不得已不能用)
     * @param s
     * @return
     */
    public boolean isNum3(String s){
        if(Strings.isNullOrEmpty(s))    {
            return  false;
        }
        int d= 0;
        try {
            d = Integer.valueOf(String.valueOf(s));
        } catch (NumberFormatException e) {
            //e.printStackTrace();
            return  false;
        }
        System.out.println(d);

        return true;
    }
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值