| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7531 人关注过本帖
标题:[求助]如何判断输入是字符是不是数字?
取消只看楼主 加入收藏
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
结帖率:100%
收藏
 问题点数:0 回复次数:3 
[求助]如何判断输入是字符是不是数字?
比如
str=buf.readLine();
a=Integer.parseInt(str);
在中间应该加一个判断语句.如果不加.当输入的不是数字会报错的.
谢谢了!
搜索更多相关主题的帖子: 数字 字符 判断 输入 
2008-03-20 20:34
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
正则表达式?...还没听过,真是谢谢了.
今天看了一下资料.学习了一下,好像还是有点问题-_-!
继续学习中...

import *;
import java.util.regex.*;
public class example {
    public static void main(String []args)throws IOException {
        BufferedReader buf;
        buf=new BufferedReader(new InputStreamReader(System.in));
        String str;
        int a=0;
        
        while(true)
        {
            System.out.print("Please input your mark:");
            str=buf.readLine();
            String regEx="[0-9]+";//表示一个或多个数字
            Pattern p=(regEx); //编译成模式
            Matcher m=p.matcher(str); //创建一个匹配器
            boolean rs=m.matches();
            if(rs)a=Integer.parseInt(str);
            if(a<=100&&a>=0)break;
            System.out.println("You inputed a wrong number!\nPlease input again!");
        }
        
        if(a>=90)System.out.println("A");
        else if(a>=75&&a<=98)System.out.println("B");
        else if(a>=60&&a<=74)System.out.println("C");
        else System.out.println("D");    
    }
}
2008-03-22 23:12
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
......刚刚开始接触.什么都不懂-_-!
先试试.谢谢各位了.
2008-03-23 22:57
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
这两天又看了一下.终于可以了.真高兴~~~
4#中的正规表达式没问题,问题出在int a=0;的初始化上.如果输入的不是数字,但a==0;当然就break了.现把它int a=-1就好啦~~~
昨天看了一下异常处理,也得啦~~~ ^-^
但.....equals();还不行.
是不知道该用哪个类中的equals方法.
找API找到头晕眼花也没找到...
好像觉得用equals();不太好处理...
//异常处理
import *;
public class Hello {
    public static void main(String []args)throws IOException {
        BufferedReader buf;
        buf=new BufferedReader(new InputStreamReader(System.in));
        String str;
        int a=-1;
        while(true)
        {
            System.out.print("Please input your mark:");
            str=buf.readLine();
            try{
                a=Integer.parseInt(str);
            }
            catch(NumberFormatException e){}//前者异常类,e为对象名
            finally{    
                if(a<=100&&a>=0)break;
                System.out.println("You inputed a wrong number!\nPlease input again!");
                System.out.println("");
            }
        }    
        if(a>=90)System.out.println("A");
        else if(a>=75&&a<=98)System.out.println("B");
        else if(a>=60&&a<=74)System.out.println("C");
        else System.out.println("D");    
    }
}
2008-03-26 20:26
快速回复:[求助]如何判断输入是字符是不是数字?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028754 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved