| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 233 人关注过本帖
标题:请教java问题
收藏  订阅  推荐  打印 
njsoso
Rank: 1
等级:新手上路
帖子:30
积分:418
注册:2008-8-1
请教java问题

InputStreamReader read=new InputStreamReader(System.in);
BufferedReader in =new BufferedReader(read);
String begin0 =in.readLine();                     ////我希望我传入来的是数字
在这里我通过以下方法去限定程序的执行:
首先定义一个
String regex="\\D";
之后
if(begin0.matches(regex)){
       System.out.println("你输入了非数字字符");
}else
{
     int cTemp=Integer.parseInt(begin0);
}
.
.
.
.
\\D 代表的是任何一个非数字字符
为什么 我调试的时候 输入了非数字
但是还是异常
System.out.println("你输入了非数字字符");无法实现???????
搜索更多相关主题的帖子: java  
2008-8-2 14:51
meteor57
Rank: 3Rank: 3
来自:银河系
等级:中级会员
帖子:269
积分:3438
注册:2007-9-29

String regEx="\\D"
str=buf.readLine();
Pattern p=Pattern.compile(regEx); //编译成模式
Matcher m=p.matcher(str); //创建一个匹配器

if(m.matches())a=Integer.parseInt(str);
....

一般我使用正则表达式用的是这样的格式.你不妨试试.
2008-8-2 17:37
woshicl
Rank: 1
来自:河北大学
等级:新手上路
帖子:13
积分:220
注册:2008-3-26

不太懂
2008-8-2 19:07
meteor57
Rank: 3Rank: 3
来自:银河系
等级:中级会员
帖子:269
积分:3438
注册:2007-9-29

woshicl 在 2008-8-2 19:07 的发言:

不太懂
呵呵~~~API帮助上有比较详细的说明了,可以去看看.
2008-8-2 19:18
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.049267 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved