断字符串是不是数字,大家可能会用一些java自带的方法,也有可能用其他怪异的招式,比如判断是不是整型数字,将字符串强制转换成整型,不是数字的就会抛出错误,那么就不是整型的了。但本文介绍的比较好的两种方法:
1。java类库自带的方法:
public boolean isNum(String msg){
if(java.lang.Character.isDigit(msg.charAt(0))){
return true;
}
return false;
}
更新:
yining提醒后,我才发现以上方法写得不够到位,现在就改为下面的简单说明了,至于具体的方法实现字符串判断是否数字我就不写了。
java.lang.Character.isDigit(char ch) boolean
isDigit 只能作用于char,所以判断字符串是否为数字,要一个一个拿出char进行判断。
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)
import java.io.*;
class Devil
{
public static void main(String[] args)
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try{
System.out.print("请输入一个数:");
String s = (String)br.readLine();
int i = Integer.parseInt(s);
}catch(NumberFormatException nb)
{
System.out.println("不是一个数");
}
catch(IOException io){
}
}
}我想让程序判断输入的字符串是否为数字,如果不是,提示不是,直到输入的是数字为止.我这个程序只能判断一次!一次不是提示完就退出程序了!是捕捉的数字异常!怎么让他循环判断!直到是数字为止!会的帮忙写一下,说明一下,先谢谢了
import java.io.*;
class Test {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
boolean b = true;
try {
while (b) {
System.out.print("请输入一个int长度的整数:");
String s = (String) br.readLine();
for (int j = 0; j < s.length(); j++) {
if (!(s.charAt(j) >= 48 && s.charAt(j) <= 57)) {
System.out.println("您输入的不是纯数字!请重新输入.");
b = true;
break;
} else {
b = false;
}
}
if (!b) {
int i = Integer.parseInt(s);
System.out.println("您输入的是数字:" + i);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
主要介绍了java基础-给出一个随机字符串,判断有多少字母?多少数字?文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字转换为中文大写,在输出字符串java将字符串中数字...
java接收用户输入的一个字符串和一个字符,将字符串中出现的所有该字符删除,打印新生成的字符串。
这个是我自己写的一个JAVA的小方法,用正则表达式写的一个判断字符串是否为数字的一个方法,拿过来就能用,很方便,比如说:手机号等
java判断字符串是否存在递增或递减 java判断字符串是否重复
这个方法用来处理java中可能有一些特别的需要,一大串中英文混合,需要中间截断或是中英中间添加一些特别的标识,调用这个方法 第一个参数是要处理的字符串,第二个是要在中英字符中间插入的字符。调用就可以得到想...
java编程统计一个字符串中的字母,数字,空格,其他,输入一个字符串,就会输出字符串中包含的字母,数字,空格,其他
编写一个applet程序,在窗口界面中实现当输入一个字符串和一个字符后,原字符串中所有该字符将被删除并显示出结果
在本篇文章里小编给大家整理的是关于java判断一个字符串是否是小数的方法,有需要的朋友们学习下。
java从一个包含中文字的字符串中抽取数字部分的两种方法,自己使用后,感觉挺符合需求了,分享出来。有需要的可以看看,看是否符合需求。
java字符串处理取出括号内的字符串 都是我自己试过可以用的j
输入一个字符串,统计出这个字符串的英文大写字母、小写字母、数字、空格以及其它字符的个数
在java算发中,求出字符串第一个数字; 如:“sdf545654afd” 他会返回,5,返回类型是(int)类型 如果字符串是:“打发士大夫” 则返回;-1, 想要运行,加入main()就行了。
java通过正则表达式获取字符串内的数字简单实例
判断一个字符串是否是标识符,将字符串输出,带有异常处理:JAVA关键字不能作为标识符
Java第6章 字符串 含源代码 Java第6章 字符串 含源代码 Java第6章 字符串 含源代码 Java第6章 字符串 含源代码 Java第6章 字符串 含源代码
java字符串类型数字设置千分位分隔,可对整数、带小数点的数字、负数进行千分位分隔。并对字符串进行了数字判断,非数字类型的字符串不进行转换。
Java字符、字符串、数组操作实例,主要是数组的复制、反转字符串中的字符、命令行参数、求字符串的长度及每一个位置上的字符、数组的排序、String类数组的操作等方面的例子,相信对初学者学习Java有帮助的。
java字母数字混搭字符串排序[归类].pdf
List<String> location=new ArrayList(); 一行代码轻松搞定混合排序问题 Collections.sort(location, new SortUtils(true));