定义的函数: 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中,判断数字位数是一个非常重要的知识点,本文将总结两种常用的方法来判断数字位数,这两种方法分别是普通方法和一般函数方法。 普通方法 普通方法使用了while循环来判断数字...
在Java编程语言中,判断一个整数是否为质数是一个常见的数学问题,也是计算机科学基础课程中的典型示例。质数定义为只能被1和它本身整除的大于1的自然数,例如2、3、5、7、11等。在实际应用中,检查一个数是否为质数...
在Java中,判断一个整数是否为回文数字是一项常见的任务,常用于各种算法问题。下面我们将详细介绍如何用Java来实现这个功能。 首先,我们可以采用将数字转化为字符串然后比较其正读与反读的方法。这种方法简单易懂...
在这个方法中,首先尝试将文本框中的字符串转换为整数,然后分别计算并显示百位、十位和个位上的数字。如果输入的不是有效的整数,则会捕获 `NumberFormatException` 异常,并通过对话框提示用户输入错误。 ##### 3...
在Java编程中,判断一个数是否为素数是常见的算法问题,尤其对于初学者来说,掌握这个概念及其实现方法至关重要。下面我们将详细讲解如何编写一个Java程序来判断一个整数是否为素数。 首先,我们需要理解素数的定义...
在Java中,可以使用Integer.toString()方法将整数转换为字符串,如`String str = Integer.toString(num);`。对于长整型数字,可以使用Long.toString()。 接着,我们需要比较字符串的首尾字符,然后逐步向中间移动。...
### Java编写的大整数四则运算:深入解析与理解 #### 概述 在计算机科学领域,处理大整数运算是一项挑战,特别是在超出标准整数类型(如`int`或`long`)所能表达的范围时。Java语言通过内置的`BigInteger`类提供了...
在Java编程语言中,"判断几位数及是否是回文数"是一个常见的算法问题,它涉及到数字处理和字符串操作。让我们深入探讨这个问题的解决方案。 首先,我们要了解什么是回文数。回文数是指一个正向读和反向读都一样的...
以下是一个简单的Java方法,用于判断字符串`str`是否可以表示一个整数: ```java // 判断整数(int) private boolean isInteger(String str) { if (null == str || "".equals(str)) { return false; } // 正则...
在提供的实例中,我们看到一个名为`isPureDigital`的方法,用于判断输入的字符串是否为正整数。方法的主要步骤如下: 1. **参数检查**:首先,我们需要确保输入的字符串不为空或空白。这可以通过`isBlank(string)`...
编写一个java应用程序。用户从键盘输入一个1-9999之间的...1)程序具有判断用户的输入是否为合法整数的功能。对非法输入(例如含有字母)要进行处理。 2)要判断输入数的位数,并输出相关信息。 3)要判断是否回文数。
在Java编程世界中,猜数字游戏是一个经典的入门项目,它能帮助初学者更好地理解控制流程、条件判断和随机数生成等基本概念。本教程将详细探讨如何使用Java编写一个简单的猜数字游戏,并涉及JSTL(JavaServer Pages ...
在Java编程语言中,"查找数字"是一种常见的算法问题,主要目标是确定一个特定的数值在给定的数据集合中是否存在,以及如果存在,它在数组或列表中的位置。本问题描述了一个简单的线性查找算法,这是一个基础的查找...
在这个代码示例中,`numToChinese`函数接收一个整数,然后通过计算每个数位上的数字并结合单位映射表生成中文读法。`simplify`函数用于删除不必要的“零”字符,以确保输出的中文读法简洁正确。`isZeroUnit`函数用来...
### Java语言实现回文数字的判断 #### 背景介绍 在计算机科学与编程领域,判断一个数是否为回文数是一个常见的练习题目。回文数是指正读反读都一样的数字,如121、3443等。这类问题不仅能够帮助初学者熟悉基本的...
Java猜数字游戏是一种常见的编程练习,它涉及到许多基础的编程概念和技术。这个游戏的基本流程是:程序生成一个随机整数,用户通过界面输入他们猜测的数字,然后程序会根据用户的猜测给出提示,直到用户猜对为止。 ...