java判断是不是是数字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java判断是不是是数字相关的知识,希望对你有一定的参考价值。
你可以用trycatch()异常机制,把你传入的字符串转换成数字,如果发生异常就不是数字,没有发生异常则是数字 参考技术A 判断字符串是否为数字:例1:
判断1个字符串中的字符是否全为数字:
NumberUtils.isDigits("11"):
true
NumberUtils.isDigits("011"):
true
NumberUtils.isDigits("0.11"):
false
例2:
判断1个字符串是否为数字: 参考技术B try a= Integer.parseInt(JOptionPane.showInputDialog(null,
"输入一个整数:");
catch (NumberFormatException ex)
JOptionPane.showMessageDialog(null, "非法数值输入,请输入一个整数");
这是弹出一个小窗口提示输入一个数,然后判断是不是整数,不是的话跑出异常 参考技术C 1用JAVA自带的函数
public static boolean isNumeric(String str)
for (int i = str.length();--i>=0;)
if (!Character.isDigit(str.charAt(i)))
return false;
return true;
2用正则表达式
public static boolean isNumeric(String str)
Pattern pattern = Pattern.compile("[0-9]*");
return pattern.matcher(str).matches();
3用ascii码
public static boolean isNumeric(String str)
for(int i=str.length();--i>=0;)
int chr=str.charAt(i);
if(chr<48 || chr>57)
return false;
return true;
本回答被提问者和网友采纳
写一个java方法,判断给定的数字是偶数还是奇数。
奇偶数的判定依据是:是否能被2整除。
1、通过字面解释去实现:采用取模(%)的做法:
public booleam isOdd(int num)return num % 2 != 0;
注意:通过取模判断奇偶数一定要与0进行比较。如果是通过与1进行比较的话会有一个问题:
0 % 2 = 0 ( 0 != 1 ) 是偶数1 % 2 = 1 ( 1 = 1 ) 是奇数
-1 % 2 = -1 ( -1 != 1 ) 是偶数,很明显是错的
2、利用位运算(&)能更好的实现
原理是:偶数的二进制末位必然是0,奇数的末尾必然是1。所以只要把一个数与1进行按与运算,运算结果为1则是奇数,0则为偶数。
public booleam isOdd(int num)return num & 1 == 1;
这种方法不用担心-1这个特殊情况,(在计算机中,负数以其正值的补码形式表达的):
-1 的二进制:
原码:0000 0001
反码:1111 1110
补码:1111 1111
按位与计算得到:0000 0001,结果是1,则可以判断为-1是奇数。
参考技术A public class Testpublic static void main(String[] args)
judgeNum(2);
judgeNum(3);
/**
* 判断是奇数还是偶数的方法
* @param num
*/
public static void judgeNum(int num)
if(num % 2 == 0)
System.out.println(num + "是偶数");
else
System.out.println(num + "是奇数");
参考技术B public static void main(String[] args)
Scanner input = new Scanner(System.in);
System.out.print("请输入您要判断的数:");
int N = input.nextInt();
if (N%2==0)
System.out.println(N + "是偶数!");
else
System.out.println(N + "是奇数!");
参考技术C boolean function(int n)
if (n%2 == 1)
return true; // 奇数返回true
else
return false; //偶数返回false
参考技术D public static boolean isEven(int num)//判断是偶数 是返回true
return num%2==0?true:false;
以上是关于java判断是不是是数字的主要内容,如果未能解决你的问题,请参考以下文章