java中判断字符串是否为数字的方法:
1.用JAVA自带的函数
public static boolean isNumeric(String str){
for (int i = 0; i < str.length(); i++){
System.out.println(str.charAt(i));
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}
2.用正则表达式
首先要import java.util.regex.Pattern 和 java.util.regex.Matcher
public boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() ){
return false;
}
return true;
}
3.使用org.apache.commons.lang
org.apache.commons.lang.StringUtils;
boolean isNunicodeDigits=StringUtils.isNumeric("aaa123456789");
http://jakarta.apache.org/commons/lang/api-release/index.html
下面的解释:
isNumeric
public static boolean isNumeric(String str)Checks if the String contains
only unicode digits. A decimal point is not a unicode digit and returns
false.
null will return false. An empty String ("") will return true.
StringUtils.isNumeric(null) = false
StringUtils.isNumeric("") = true
StringUtils.isNumeric(" ") = false
StringUtils.isNumeric("123") = true
StringUtils.isNumeric("12 3") = false
StringUtils.isNumeric("ab2c") = false
StringUtils.isNumeric("12-3") = false
StringUtils.isNumeric("12.3") = false
Parameters:
str - the String to check, may be null
Returns:
true if only contains digits, and is non-null
上面三种方式中,第二种方式比较灵活。
第一、三种方式只能校验不含负号“-”的数字,即输入一个负数-199,输出结果将是false;
而第二方式则可以通过修改正则表达式实现校验负数,将正则表达式修改为“^-?[0-9]+”即可,修改为“-?[0-9]+.?[0-9]+”即可匹配所有数字。
如果我输入的是"a“,它能识别出来这个不是数字,该怎么写?
import java.io.* ;
import java.util.* ;
public class Test{
public static void main(String [] args) throws Exception{
System.out.println("请输入数字:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String line=br.readLine();
if(line.matches("\\d+")) //正则表达式 详细见java.util.regex 类 Pattern
System.out.println("数字");
else
System.out.println("非数字");
}
}
("\d")是数字0-9 ("\\d+")是什么意思?
正则表达式用两个斜杠表示一个斜杠,后面跟着一个加号表示出现一次或多次,完整的意思就是整个字符串中仅包含一个或多个数字。
本文来自:http://blog.csdn.net/jojoy_828/archive/2008/08/27/2837784.aspx
分享到:
相关推荐
以上介绍了四种判断字符串是否为数字的方法,包括逐字符检查、使用正则表达式、利用 `String.matches()` 方法以及基于 ASCII 值的比较。每种方法都有其适用场景和特点,开发者可以根据具体需求选择最合适的方式。...
### JAVA判断字符串是否为数字字符 在日常的Java开发工作中,我们经常需要验证用户输入的数据是否符合预期格式,比如验证电话号码、身份证号等是否仅包含数字。这种情况下,一个简单有效的工具方法就显得尤为重要了...
java判断字符串是否存在递增或递减 java判断字符串是否重复
### 知识点详解 #### 一、字符串与数字判断 ...总之,判断字符串是否只包含数字是一项基本而重要的任务,在多种编程场景中都有广泛应用。理解并掌握本文所述的方法和技术,将有助于开发者更高效地完成相关工作。
### Java正则表达式判断字符串是否包含中文 在日常的软件开发过程中,我们经常会遇到需要对输入的字符串进行校验的情况。例如,在处理用户输入、文本分析或数据清洗时,可能需要判断一个字符串中是否包含中文字符。...
在Java编程中,验证字符串是否符合JSON(JavaScript Object Notation)格式是一项常见的任务,尤其是在进行前后端数据交互时。JSON是一种轻量级的数据交换格式,它允许数据以键值对的形式存储,易于人阅读和编写,...
在编程领域,判断一个字符串或字符串中的一个字符是否为数字类型是常见的...综上所述,判断字符串或字符是否为数字类型,可以依据具体编程语言选择合适的方法,同时要注意处理潜在的安全风险,确保程序的稳定性和效率。
判断字符串是否全部是数字.txt
在上面的代码中,我们首先使用 StringUtils.isBlank() 方法来判断字符串是否为空或长度为 0 或由空白符构成。如果字符串为空或长度为 0 或由空白符构成,返回 false。否则,我们使用 matches() 方法来判断字符串是否...
Java判断字符串是否为IP地址的方法 Java判断字符串是否为IP地址的方法是指通过编写特定的方法来判断输入的字符串是否符合IP地址的格式。这种方法在实际开发中非常有用,特别是在网络编程和网络安全等领域。 在Java...
总结来说,判断字符串是否是日期格式主要涉及`SimpleDateFormat`、`DateTimeFormatter`和正则表达式。选择哪种方法取决于项目需求、兼容性及代码的可读性和维护性。在实际编程中,应结合具体情况灵活选用。
我们可以通过遍历字符串,检查每个字符的ASCII码值是否在这个范围内来判断字符串是否全为数字。下面是具体实现: ```java public static boolean isNumeric(String str) { for (int i = str.length(); --i >= 0;) ...
文章中提到,使用`Double.parseDouble()`方法抛出异常的方式来判断字符串是否为数字是有局限性的。这种方法不能准确区分正负整数、小数和实数,且捕获异常的效率较低。因此,采用正则表达式是更为合适的选择。 ### ...
通过捕获这个异常,我们可以很容易地判断字符串是否仅由数字组成。 #### 性能考虑 - **正则表达式方法**:适用于需要多次使用的场景,尤其是在多个地方都需要验证字符串是否为数字的情况下。预编译正则表达式可以...
首先,了解Unicode编码对于掌握判断字符串中是否包含中文的方法至关重要。Unicode为世界上几乎所有的字符都提供了唯一的编码。对于中文字符,Unicode定义了从\u4e00到\u9fa5范围内的字符集,这个范围覆盖了大部分...
在Java中,我们可以使用多种方法来判断字符串中的字母和数字。例如,我们可以使用正则表达式来匹配字母和数字,但是这种方法相对复杂些。我们也可以使用Java中的Character类来判断字符的类型,但是这种方法需要了解...
在Java中判断字符串是否含有乱码是一个常见的问题,特别是在处理网络传输数据或文本文件导入导出时。本文将介绍通过实例代码如何判断一个字符串是否含有乱码,并通过编写的Java方法来实现此功能。 首先,我们需要...
1. 判断字符串是否可以转换为数字。 2. 使用`DecimalFormat`实例,设置适当的模式(如`#,###.###`)。 3. 调用`format()`方法将数字转换为包含千分位分隔符的字符串。 注意,`DecimalFormat`和`NumberFormat`类在...
其中,`IsMatch` 方法用于判断指定的字符串是否与正则表达式匹配。 #### 2. IsMatch 方法详解 在提供的代码示例中,使用了 `IsMatch` 方法来进行字符串格式验证。具体代码如下: ```csharp public int IsDate...
本文将深入解析Java中如何判断字符串是否为数字的方法,以及存在的问题和解决方案。 首先,我们可以从简单的基础开始,即判断字符串是否为空或null。在Java中,一个空字符串("")和null值显然不是数字。因此,我们...