`
一二三木头人
  • 浏览: 19784 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

JAVA判断数字、整数的方法

 
阅读更多

定义的函数: isNumeric(String) 是判断数字的,包括小数
支持格式:
"33" "+33" "033.30" "-.33" ".33" " 33." " 000.000 "

isInteger(String) 仅是用来判断整数的
支持格式:
"33" "003300" "+33" " -0000 "


上面两函数分别各有两种方法可以实现

一、一个个字符判断下去(效率高些)
下面的 iisNumeric(String)、isInteger(String)

二、利用异常:用Integer.parseInt(str),Double.parseDouble(str)解析字符串,若非数字则抛出异常
下面的 isNumericEx(String)、isIntegerEx(String)--其中isIntegerEx(String)最多支持到十位

package hartech;


public class JMath {


    
     public static boolean isNumeric(String str) {
         int begin = 0;
         boolean once = true;
         if (str == null || str.trim().equals("")) {
             return false;
         }
         str = str.trim();
         if (str.startsWith("+") || str.startsWith("-")) {
             if (str.length() == 1) {
                 // "+" "-"
                 return false;
             }
             begin = 1;
         }
         for (int i = begin; i < str.length(); i++) {
             if (!Character.isDigit(str.charAt(i))) {
                 if (str.charAt(i) == '.' && once) {
                     // '.' can only once
                     once = false;
                 }
                 else {
                     return false;
                 }
             }
         }
         if (str.length() == (begin + 1) && !once) {
             // "." "+." "-."
             return false;
         }
         return true;
     }

    
     public static boolean isInteger(String str) {
         int begin = 0;
         if (str == null || str.trim().equals("")) {
             return false;
         }
         str = str.trim();
         if (str.startsWith("+") || str.startsWith("-")) {
             if (str.length() == 1) {
                 // "+" "-"
                 return false;
             }
             begin = 1;
         }
         for (int i = begin; i < str.length(); i++) {
             if (!Character.isDigit(str.charAt(i))) {
                 return false;
             }
         }
         return true;
     }


    
     public static boolean isNumericEx(String str) {
         try {
             Double.parseDouble(str);
             return true;
         }
         catch (NumberFormatException ex) {
             return false;
         }
     }

    
     public static boolean isIntegerEx(String str) {
         str = str.trim();
         try {
             Integer.parseInt(str);
             return true;
         }
         catch (NumberFormatException ex) {
             if (str.startsWith("+")) {
                 return isIntegerEx(str.substring(1));
             }
             return false;
         }
     }
}
转自:http://www.hartech.cn/blog/blogview.asp?logID=73
------------------------------------正则表达式判断法------------------------------
//判断是否是整数
public static boolean isNumeric(String s)
{
   if((s != null)&&(s!=""))
    return s.matches("^[0-9]*$");
   else
    return false;
}
//判断传递来的是否是数字
public static int checkID(String s)
{
   if((s == null)||(s.length() == 0)||!s.matches("^[0-9]*$"))
   {
    return 0;
   }
   else
   {
    if(s.length() < 10)
    {
     return Integer.parseInt(s);
      }
      else
      {
        return 0;
      } 
   }
}
//判断传递来的是否是字符串
   public static String checkString(String s)
{
   if((s == null)||(s.length() == 0)||s.matches("^[0-9]*$"))
   {
    return "";
   }
   else
   {
    return s;    
   }
}
分享到:
评论

相关推荐

    详解Java判断是否是整数,小数或实数的正则表达式

    在Java中使用正则表达式来判断字符串是否符合整数、小数或实数的格式是一种常见且有效的做法。在编程中,我们经常需要对输入的字符串进行格式验证,以确保它们符合预期的数值格式,尤其是在处理财务数据、用户输入...

    利用JAVA,念整数。

    在Java编程语言中,"利用JAVA,念整数"是一个有趣的任务,它涉及到字符串处理、数字转换以及中文字符的输出。下面将详细讲解如何实现这一功能,并探讨相关的知识点。 首先,我们需要从用户输入或者文件中读取一个...

    Java判断数字位数的方法总结

    Java判断数字位数的方法总结 在Java中,判断数字位数是一个非常重要的知识点,本文将总结两种常用的方法来判断数字位数,这两种方法分别是普通方法和一般函数方法。 普通方法 普通方法使用了while循环来判断数字...

    JAVA中判断一个整数是否为质数

    在Java编程语言中,判断一个整数是否为质数是一个常见的数学问题,也是计算机科学基础课程中的典型示例。质数定义为只能被1和它本身整除的大于1的自然数,例如2、3、5、7、11等。在实际应用中,检查一个数是否为质数...

    java 如何判断回文数字

    在Java中,判断一个整数是否为回文数字是一项常见的任务,常用于各种算法问题。下面我们将详细介绍如何用Java来实现这个功能。 首先,我们可以采用将数字转化为字符串然后比较其正读与反读的方法。这种方法简单易懂...

    java-显示整数个位数

    在这个方法中,首先尝试将文本框中的字符串转换为整数,然后分别计算并显示百位、十位和个位上的数字。如果输入的不是有效的整数,则会捕获 `NumberFormatException` 异常,并通过对话框提示用户输入错误。 ##### 3...

    判断一个数是否为素数的java代码

    在Java编程中,判断一个数是否为素数是常见的算法问题,尤其对于初学者来说,掌握这个概念及其实现方法至关重要。下面我们将详细讲解如何编写一个Java程序来判断一个整数是否为素数。 首先,我们需要理解素数的定义...

    回文数字的判断(Java)

    在Java中,可以使用Integer.toString()方法将整数转换为字符串,如`String str = Integer.toString(num);`。对于长整型数字,可以使用Long.toString()。 接着,我们需要比较字符串的首尾字符,然后逐步向中间移动。...

    Java编写的大整数四则运算

    ### Java编写的大整数四则运算:深入解析与理解 #### 概述 在计算机科学领域,处理大整数运算是一项挑战,特别是在超出标准整数类型(如`int`或`long`)所能表达的范围时。Java语言通过内置的`BigInteger`类提供了...

    JAVA 判断几位数及是否是回文数

    在Java编程语言中,"判断几位数及是否是回文数"是一个常见的算法问题,它涉及到数字处理和字符串操作。让我们深入探讨这个问题的解决方案。 首先,我们要了解什么是回文数。回文数是指一个正向读和反向读都一样的...

    Java判断字符串是否是整数或者浮点数的方法

    以下是一个简单的Java方法,用于判断字符串`str`是否可以表示一个整数: ```java // 判断整数(int) private boolean isInteger(String str) { if (null == str || "".equals(str)) { return false; } // 正则...

    java判断字符串是正整数的实例

    在提供的实例中,我们看到一个名为`isPureDigital`的方法,用于判断输入的字符串是否为正整数。方法的主要步骤如下: 1. **参数检查**:首先,我们需要确保输入的字符串不为空或空白。这可以通过`isBlank(string)`...

    编写一个java应用程序。用户从键盘输入一个1-9999之间的数

    编写一个java应用程序。用户从键盘输入一个1-9999之间的...1)程序具有判断用户的输入是否为合法整数的功能。对非法输入(例如含有字母)要进行处理。 2)要判断输入数的位数,并输出相关信息。 3)要判断是否回文数。

    Java里猜数字游戏代码

    在Java编程世界中,猜数字游戏是一个经典的入门项目,它能帮助初学者更好地理解控制流程、条件判断和随机数生成等基本概念。本教程将详细探讨如何使用Java编写一个简单的猜数字游戏,并涉及JSTL(JavaServer Pages ...

    java算法(查找数字)

    在Java编程语言中,"查找数字"是一种常见的算法问题,主要目标是确定一个特定的数值在给定的数据集合中是否存在,以及如果存在,它在数组或列表中的位置。本问题描述了一个简单的线性查找算法,这是一个基础的查找...

    Java 数字转换成中文读法

    在这个代码示例中,`numToChinese`函数接收一个整数,然后通过计算每个数位上的数字并结合单位映射表生成中文读法。`simplify`函数用于删除不必要的“零”字符,以确保输出的中文读法简洁正确。`isZeroUnit`函数用来...

    java语言实现回文数字的判断

    ### Java语言实现回文数字的判断 #### 背景介绍 在计算机科学与编程领域,判断一个数是否为回文数是一个常见的练习题目。回文数是指正读反读都一样的数字,如121、3443等。这类问题不仅能够帮助初学者熟悉基本的...

    JAVA猜数字游戏.rar

    Java猜数字游戏是一种常见的编程练习,它涉及到许多基础的编程概念和技术。这个游戏的基本流程是:程序生成一个随机整数,用户通过界面输入他们猜测的数字,然后程序会根据用户的猜测给出提示,直到用户猜对为止。 ...

Global site tag (gtag.js) - Google Analytics