在java里怎么判断输入的东西是不是数字和正整数?(请把详细的代码给我谢谢)
3个回答
2013-11-09
展开全部
数
String value = "-23423.333";//举例
用Double 解析判断是否为数字,如果抛出异常退出,正确接着解析是否为整数.
value.indexOf(".")>-1表示为小数/*哪怕像3.00这样的数同样是小数*/,==-1表示为整数。接着用value.indexOf("-")判断是否为负数。效率相对于解析成整数要高很多。
String value = "-23423.333";//举例
用Double 解析判断是否为数字,如果抛出异常退出,正确接着解析是否为整数.
value.indexOf(".")>-1表示为小数/*哪怕像3.00这样的数同样是小数*/,==-1表示为整数。接着用value.indexOf("-")判断是否为负数。效率相对于解析成整数要高很多。
2013-11-09
展开全部
顶流星的代码,
try
{ //如果转换异常则输入的不是数字
num=Integer.parseInt(st);
if(num>0)
{
System.out.println("输入的是正整数") ;
}
break;
}
catch(Exception e)
{
System.out.println("只能输入整数") ;
}
关键是这个try...catch,在try中,如果 Integer.parseInt() 异常报错的话会直接跳到catch中。
try
{ //如果转换异常则输入的不是数字
num=Integer.parseInt(st);
if(num>0)
{
System.out.println("输入的是正整数") ;
}
break;
}
catch(Exception e)
{
System.out.println("只能输入整数") ;
}
关键是这个try...catch,在try中,如果 Integer.parseInt() 异常报错的话会直接跳到catch中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-09
展开全部
import java.io.BufferedReader;
import java.io.InputStreamReader;public class Number { public static void main(String[] args) { int num ;
String st ;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in)) ;
while(true)
{
System.out.print("请输入数字:") ;
try
{
st=br.readLine(); //如果转换异常则输入的不是数字
num=Integer.parseInt(st);
if(num>0)
{
System.out.println("输入的是正整数") ;
}
break;
}
catch(Exception e)
{
System.out.println("只能输入整数") ;
}
}
} }
import java.io.InputStreamReader;public class Number { public static void main(String[] args) { int num ;
String st ;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in)) ;
while(true)
{
System.out.print("请输入数字:") ;
try
{
st=br.readLine(); //如果转换异常则输入的不是数字
num=Integer.parseInt(st);
if(num>0)
{
System.out.println("输入的是正整数") ;
}
break;
}
catch(Exception e)
{
System.out.println("只能输入整数") ;
}
}
} }
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询