请牛人看看这段java代码

来源:百度知道 编辑:UC知道 时间:2024/05/29 08:11:14
String a=(String)in.readLine();
for(int thm=0;thm<a.length();thm++)
{
if(!(a.charAt(thm)>=48&&a.charAt(thm)<=57))
{
.......
主要是if(!(a.charAt(thm)>=48&&a.charAt(thm)<=57))这一段代码~~是什么意思?

这段代码的意思是:
如果字符串中不含有数字的话。
数字(0-9)的ASCII码为48-57

当非(!) a.charAt(thm)>=48并且a.charAt(thm)<=57时

String a=(String)in.readLine(); //从键盘输入数据 把数据转化成String类型
for(int thm=0;thm<a.length();thm++)
{

if(!(a.charAt(thm)>=48&&a.charAt(thm)<=57))//判断语句 注意前面那个!当a.charAt(thm)>=48或者a.charAt(thm)<=57的时候 继续执行下面的代码
{

if(!(a.charAt(thm)>=48&&a.charAt(thm)<=57))

48到57,是0到1的键值

因此,这句话主要是说如果输入的内容,不是数字,就....

附键值对应:
数字键0,48
数字键1,49
数字键2,50
数字键3,51
数字键4,52
数字键5,53
数字键6,54
数字键7,55
数字键8,56
数字键9,57

这是判断当前的字母是不是数字的0~9.
0的ASCII码是48,9的ASCII码57