问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java判断string变量是否是数字的六种方法

发布网友 发布时间:4小时前

我来回答

1个回答

热心网友 时间:3小时前

判断Java中的string变量是否为数字,可以通过多种方法实现。以下为六种常用方法:

1. 使用正则表达式

方法通过编译正则表达式 "[0-9]*" 来识别字符串是否仅由数字组成。

java

Pattern pattern = Pattern.compile("[0-9]*");

Matcher isNum = pattern.matcher(str);

if (!isNum.matches()) {

return false;

}

return true;

2. 利用Java自带函数

该方法循环遍历字符串中的每个字符,检查是否为数字。发现非数字字符则返回false。

java

public static boolean isNumeric(String str) {

for (int i = 0; i < str.length(); i++) {

if (!Character.isDigit(str.charAt(i))) {

return false;

}

}

return true;

}

3. 利用Apache Commons Lang库

此方法同样检查字符串是否仅包含Unicode数字字符。返回true表示字符串为数字,false表示非数字。

java

org.apache.commons.lang.StringUtils;

boolean isNunicodeDigits = StringUtils.isNumeric("aaa123456789");

4. 利用ASCII码值判断

此方法遍历字符串中的每个字符,检查其ASCII码值是否在数字范围内。非数字字符返回false。

java

public static boolean isNumeric0(String str) {

for (int i = str.length(); --i >= 0;) {

int chr = str.charAt(i);

if (chr 48 || chr > 57)

return false;

}

return true;

}

5. 逐个检查字符

此方法使用字符串"0123456789"检查字符串中的每个字符是否为数字。非数字字符返回false。

java

public static boolean isNumeric3(String str) {

final String number = "0123456789";

for (int i = 0; i < number.length; i++) {

if (number.indexOf(str.charAt(i)) == -1) {

return false;

}

}

return true;

}

6. 捕获NumberFormatException异常

此方法尝试将字符串解析为整数。解析失败时捕获异常,返回false。成功解析则返回true。

java

public static boolean isNumeric00(String str) {

try {

Integer.parseInt(str);

return true;

} catch (NumberFormatException e) {

System.out.println("异常:" + str + "不是数字/整数...");

return false;

}

}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
不干胶印刷设备多少钱一套 小型不干胶印刷机价格 什么是走水运 水路的特点是什么 疯狂僵尸机游戏怎么玩,植物大战僵尸高清版怎么玩 植物大战僵尸2 植物大战僵尸2戴夫最好的朋友是谁? 怎么下载疯狂的戴夫游戏 游戏下载地址 小红书数据分析工具推荐 三分钟做好一张小红书封面,不同平台超好用的高效率工具你造吗_百度知... 网球王子的剧场版都有哪些啊 网球王子剧场版:英国式庭球城决战DVD情报 ...将字母或 数字开头的字符串截取数字(包含数字)之前的。 惠普mini1000、联想S10E、DELL mini10配置相差不大,价钱差别不少,大家... HP笔记本 Mini 1000如何分区 四川凉山有哪些县 石岗到昌北机场多远 76.8÷32的竖式? 竖式计算76.8÷11(循环小数) 76.8÷4.8竖式 76.8÷4.8竖式,要图片? 76.8÷4竖式计算 大气逆辐射对昼夜温差影响 屠龙破晓tt客户端高速下载 屠龙破晓uc版高速下载 屠龙破晓九游版安卓游戏下载地址 屠龙破晓h5安卓游戏如何下载 斗罗大陆 斗罗大陆秋露凝霜活动第四关平民怎么过? 斗罗大陆 斗罗大陆秋露凝霜活动第二关怎么过? 斗罗大陆 斗罗大陆h5秋露凝霜活动第四关怎么过? 斗罗大陆 斗罗大陆秋露凝霜活动怎么通关? 斗罗大陆 斗罗大陆秋露凝霜活动第三关怎么过? 快要放暑假了,我想给孩子报一些英语或者跳舞的兴趣班,有什么好的英语培... 马上暑假了,小侄子下个报个英语培养兴趣班。不知道大家有什么好推荐的... ...想在暑假里面补一补,不知有什么好的兴趣班推荐? 想给孩子报个有趣的英语学习班 专升本思修和高数哪个好学 辽宁专升本专升本考试,是国家统一时间么,公共课考试内容是一样的么... 自考专升本免考科目有哪些 当代大学生就业现状形势分析 天翼导航如何查看手机版本? 如何取消天翼导航业务? 什么是“天翼导航”? 广州站去广州南站怎么走最快 广州南站开车到广州站多长时间 微信聊天记录怎么找 微信聊天记录怎样找 中国农业银行康定县支行助学贷款异地怎么还款 球员在三步上篮时起步后被拉或阻挡应该吹罚球吗 一文详解相控阵天线仿真技术 萌新笔记——CST(一) 如何利用matlab进行均匀线性阵列的仿真? 旧电脑上的光驱拆下来还能使用吗,还能用的话请说的详细点,谢谢 容声为什么是rongsheng