您的位置:

java判断数字,java判断数字是否为空

本文目录一览:

java如何判断字符串中是否含有数字

一、算法思想

从字符串的第一个字符开始,逐个判断字符是否是数字,若是数字,说明字符串中包含数字,否则继续判断下一个字符,直到找到数字或到字符串结束也没有发现数字。

二、操作过程

        J a v a    2    E n t e r p r i s e    E d i t i o n

        ^(不是数字)

          ^(不是数字)

            ^(不是数字)

              ^(不是数字)

                  ^(不是数字)

                    ^(是数字,结束)

三、程序代码

public class Main {

public static void main(String[] args) {

System.out.println(containDigit("Java 2 Enterprise Edition"));

}

/**

 * 判断字符串中是否包含数字

 * @param source 待判断字符串

 * @return 字符串中是否包含数字,true:包含数字,false:不包含数字

 */

public static boolean containDigit(String source) {

char ch;

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

ch = source.charAt(i);

if(ch = '0'  ch = '9') {

return true;

}

}

return false;

}

}

四、运行测试

true

Java中判断字符串是否为数字的几种方法

1.使用Character.isDigit(char)判断

char num[] = str.toCharArray();//把字符串转换为字符数组

StringBuffer title = new StringBuffer();//使用StringBuffer类,把非数字放到title中

StringBuffer hire = new StringBuffer();//把数字放到hire中

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

// 判断输入的数字是否为数字还是字符

if (Character.isDigit(num[i])) {把字符串转换为字符,再调用Character.isDigit(char)方法判断是否是数字,是返回True,否则False

hire.append(num[i]);// 如果输入的是数字,把它赋给hire} else {title.append(num[i]);// 如果输入的是字符,把它赋给title}}}

2.使用类型转换判断try {String str="123abc";

int num=Integer.valueOf(str);//把字符串强制转换为数字

return true;//如果是数字,返回True

} catch (Exception e) {

return false;//如果抛出异常,返回False}

3.使用正则表达式判断

String str = "";

boolean isNum = str.matches("[0-9]+");

//+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7")

ps:这个方法只能用于判断是否是正整数

java判断数字类型(小数和整数)

java判断数字类型是否为小数,可以采用正则表达式的方式来判断,以下是使用正则表达式来判断数字类型是否为小数的代码:

public static boolean isNumber(String str) {

boolean isInt = Pattern.compile("^-?[1-9]\\d*$").matcher(str).find();

boolean isDouble = Pattern.compile("^-?([1-9]\\d*\\.\\d*|0\\.\\d*[1-9]\\d*|0?\\.0+|0)$").matcher(str).find();

return isInt || isDouble;

}

 扩展资料

java判断数字类型,正则表达式用法:

1、$:匹配输入行尾。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。

2、*:匹配前面的子表达式任意次。例如,zo*能匹配“z”,也能匹配“zo”以及“zoo”。*等价于{0,}。

3、+:匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}。

4、?:匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“do”或“does”。?等价于{0,1}。

5、{n,}:n是一个非负整数。至少匹配n次。例如,“o{2,}”不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。

参考资料:百度百科—正则表达式

Java中怎样判断一个字符串是否是数字

用java的异常机制,不仅可以判断是否是数字,还可以判断整数或者小数:

public void checkInt(String bh){

try{

int num = Integer.parseInt(bh);//将输入的内容转换成int

System.out.println("是整数:"+num);//是整数

}catch (NumberFormatException e) {//转换成int类型时失败

try{

double d =Double.parseDouble(bh);//转成double类型

System.out.println("是小数:"+d);//是小数

}catch (NumberFormatException e2) {//转成double类型失败

System.out.println("不是数字");

}

}

}

java中怎么判断一个字符串是否为数字

可以使用Character类的isDigit逐位判断。但是这样无法判断小数、负数。

也可以直接使用正则:

Pattern

pattern

=

Pattern.compile("-?[0-9]+\\.?[0-9]*");

String

str

=

"-55.5555";

Matcher

isNum

=

pattern.matcher(str);

if(

isNum.matches()

){

System.out.println("数字");

}