java中如何判断String中的内容是否为数字?
RT,判断字符串是否为数字,使用什么方法?----------------------------------------------------------------...
RT,判断字符串是否为数字,使用什么方法?
--------------------------------------------------------------------------------------------------------
首先,我认为业务逻辑不应该写在异常中,所以我觉得用try虽然能够实现,但是实际应用会引发问题.
其次,做循环判断的方法是不是太复杂了点?程序写的太丑了吧...
最后说用正则式的,能详细说明一下嘛 展开
--------------------------------------------------------------------------------------------------------
首先,我认为业务逻辑不应该写在异常中,所以我觉得用try虽然能够实现,但是实际应用会引发问题.
其次,做循环判断的方法是不是太复杂了点?程序写的太丑了吧...
最后说用正则式的,能详细说明一下嘛 展开
6个回答
展开全部
可以用异常来做校验
/**
* 判断字符串是否是整数
*/
public static boolean isInteger(String value) {
try {
Integer.parseInt(value);
return true;
} catch (NumberFormatException e) {
return false;
}
}
/**
* 判断字符串是否是浮点数
*/
public static boolean isDouble(String value) {
try {
Double.parseDouble(value);
if (value.contains("."))
return true;
return false;
} catch (NumberFormatException e) {
return false;
}
}
/**
* 判断字符串是否是数字
*/
public static boolean isNumber(String value) {
return isInteger(value) || isDouble(value);
}
============================================
我现在在公司做实际开发,这些都是最基本的代码
异常不是像你们想象的那么简单和没用
很多潜力你们都没有发掘它
你们看看我的分数,我已经很久不来百度知道了
因为什么,因为这里的问题实在是太初级了
你回答一些超过他们思考范围的反么就认为不好
楼主可以去看看Refactoring,Martin Fowler写的,这本书中的关于用异常来取代条件测试的那个原则,真懒得说了
另外,楼主到底知道不知道什么是业务逻辑,真是服了
/**
* 判断字符串是否是整数
*/
public static boolean isInteger(String value) {
try {
Integer.parseInt(value);
return true;
} catch (NumberFormatException e) {
return false;
}
}
/**
* 判断字符串是否是浮点数
*/
public static boolean isDouble(String value) {
try {
Double.parseDouble(value);
if (value.contains("."))
return true;
return false;
} catch (NumberFormatException e) {
return false;
}
}
/**
* 判断字符串是否是数字
*/
public static boolean isNumber(String value) {
return isInteger(value) || isDouble(value);
}
============================================
我现在在公司做实际开发,这些都是最基本的代码
异常不是像你们想象的那么简单和没用
很多潜力你们都没有发掘它
你们看看我的分数,我已经很久不来百度知道了
因为什么,因为这里的问题实在是太初级了
你回答一些超过他们思考范围的反么就认为不好
楼主可以去看看Refactoring,Martin Fowler写的,这本书中的关于用异常来取代条件测试的那个原则,真懒得说了
另外,楼主到底知道不知道什么是业务逻辑,真是服了
展开全部
//验证字符串中包含数字,很简单。
public void isNumber(String str) {
boolean isNumber = true;
char[] ch = str.toCharArray();
for (int i = 0; i < ch.length; i++) {
isNumber = Character.isDigit(ch[i]);
if (isNumber)
break;
}
if (isNumber)
System.out.println("输入的字符串中包含数字!");
}
public void isNumber(String str) {
boolean isNumber = true;
char[] ch = str.toCharArray();
for (int i = 0; i < ch.length; i++) {
isNumber = Character.isDigit(ch[i]);
if (isNumber)
break;
}
if (isNumber)
System.out.println("输入的字符串中包含数字!");
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
服了楼上的了,
一楼的想法,
空间效率都不敢恭维。
回应二楼的,
不知大牛们是否都用这种想法用在实际程序中,
我倒想用正则表达式来做,
就是不知道像
12.
.23
之类的楼主认不认为是数字
[\d]+
or
[\d]*.[\d]*(具体写法忘记了)
一楼的想法,
空间效率都不敢恭维。
回应二楼的,
不知大牛们是否都用这种想法用在实际程序中,
我倒想用正则表达式来做,
就是不知道像
12.
.23
之类的楼主认不认为是数字
[\d]+
or
[\d]*.[\d]*(具体写法忘记了)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
String str="123";
boolean mat = str.matches("\\d+");//返回true为纯数字,否则就不是纯数字
boolean mat = str.matches("\\d+");//返回true为纯数字,否则就不是纯数字
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
二楼的这么写不太合适的。一楼的应该比较完善。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询