java判断字符串是都全是数字?求一方法 Java中怎样判断一个字符串是否是数字

java\u4e2d\u5224\u65ad\u5b57\u7b26\u4e32\u662f\u5426\u4e3a\u7eaf\u6570\u5b57

\u65b9\u6cd5\u4e00\uff1a\u5229\u7528\u6b63\u5219\u8868\u8fbe\u5f0f
public class Testone {
public static void main(String[] args){
String str="123456";
boolean result=str.matches("[0-9]+");
if (result == true) {
System.out.println("\u8be5\u5b57\u7b26\u4e32\u662f\u7eaf\u6570\u5b57");}else{System.out.println("\u8be5\u5b57\u7b26\u4e32\u4e0d\u662f\u7eaf\u6570\u5b57");}}}\u65b9\u6cd5\u4e8c\uff1a\u5229\u7528Pattern.
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Testone {
public static void main(String[] args){
String str="123456";
Pattern pattern = Pattern.compile("[0-9]{1,}");
Matcher matcher = pattern.matcher((CharSequence)str);
boolean result=matcher.matches();
System.out.println("\u8be5\u5b57\u7b26\u4e32\u662f\u7eaf\u6570\u5b57");}else{System.out.println("\u8be5\u5b57\u7b26\u4e32\u4e0d\u662f\u7eaf\u6570\u5b57");}}}

ava\u4e2d\u5224\u65ad\u5b57\u7b26\u4e32\u662f\u5426\u4e3a\u6570\u5b57\u7684\u65b9\u6cd5:

1.\u7528JAVA\u81ea\u5e26\u7684\u51fd\u6570
public static boolean isNumeric(String str){
for (int i = 0; i < str.length(); i++){
System.out.println(str.charAt(i));
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}

2.\u7528\u6b63\u5219\u8868\u8fbe\u5f0f
\u9996\u5148\u8981import java.util.regex.Pattern \u548c 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.\u4f7f\u7528org.apache.commons.lang
org.apache.commons.lang.StringUtils;
boolean isNunicodeDigits=StringUtils.isNumeric("aaa123456789");
http://jakarta.apache.org/commons/lang/api-release/index.html\u4e0b\u9762\u7684\u89e3\u91ca:
isNumeric
public static boolean isNumeric(String str)Checks if the String contains only unicode digits. A decimal point is not a unicode digit and returns false.
null will return false. An empty String ("") will return true.
StringUtils.isNumeric(null) = false
StringUtils.isNumeric("") = true
StringUtils.isNumeric(" ") = false
StringUtils.isNumeric("123") = true
StringUtils.isNumeric("12 3") = false
StringUtils.isNumeric("ab2c") = false
StringUtils.isNumeric("12-3") = false
StringUtils.isNumeric("12.3") = false

Parameters:
str - the String to check, may be null
Returns:
true if only contains digits, and is non-null

\u4e0a\u9762\u4e09\u79cd\u65b9\u5f0f\u4e2d\uff0c\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u6bd4\u8f83\u7075\u6d3b\u3002

\u7b2c\u4e00\u3001\u4e09\u79cd\u65b9\u5f0f\u53ea\u80fd\u6821\u9a8c\u4e0d\u542b\u8d1f\u53f7\u201c-\u201d\u7684\u6570\u5b57\uff0c\u5373\u8f93\u5165\u4e00\u4e2a\u8d1f\u6570-199\uff0c\u8f93\u51fa\u7ed3\u679c\u5c06\u662ffalse\uff1b

\u800c\u7b2c\u4e8c\u65b9\u5f0f\u5219\u53ef\u4ee5\u901a\u8fc7\u4fee\u6539\u6b63\u5219\u8868\u8fbe\u5f0f\u5b9e\u73b0\u6821\u9a8c\u8d1f\u6570\uff0c\u5c06\u6b63\u5219\u8868\u8fbe\u5f0f\u4fee\u6539\u4e3a\u201c^-?[0-9]+\u201d\u5373\u53ef\uff0c\u4fee\u6539\u4e3a\u201c-?[0-9]+.?[0-9]+\u201d\u5373\u53ef\u5339\u914d\u6240\u6709\u6570\u5b57\u3002

首先将字符串拆分成单个字符存放在一个数组中 然后判断数组中所有字符对应的int数值范围是否是在ASCLL中数字的范围之内(比如说'a'的int数值是97) 若果是的话就返回true 否则返回false

Scanner sc = new Scanner(System.in);
if(sc.hasNextInt())
{
int a = sc.nextInt();
}
Scanner类的hasNextInt()的这个方法可以做到的。在JAVA的API里找到Scanner类你就知道
你的问题看错了,我这个方法是你输入一串字符,判断它是否是一个数字。解决方法用正则表达式是最方便的。让它去匹配一个表达只有数字的表达式。用String的matches(String str) 这个方法,它返回一个boolean值,str就是一个正则表达式。
下面的例子正负整数,正负小数都能判断
public class Test
{
public static void main(String[] args)
{
String a = "-3439g.434";
String regex = "-?\\d+.\\d+?";
if(a.matches(regex))
System.out.println("是一个数字");
else
System.out.println("不是一个数字");
}
}

用个正则吧:
boolean isAllDigtal(String a){
return a != null && a.matches("[0-9]*");
//如果你认为null是返回true,可以用 return a == null || a.matches("[0-9]*");
}

package test;

public class test {

/**
* @param args
*/
public static void main(String[] args) {
String str = "123232";
System.out.println(check(str));
}

public static boolean check(String str ){
String shuzi = "0123456789";
boolean bool = true ;
char[] strArray = str.toCharArray();
for (int i = 0; i < strArray.length; i++) {
if(!shuzi.contains(String.valueOf(strArray[i]))){
bool = false ;
}
}
return bool ;
}
}

补充 : 正则验证 适用 正负数
String regex = "^-?[0-9]*$";
System.out.println(str.matches(regex));

用正则表达式吧

  • java涓鎬庝箞鍒ゆ柇瀛楃涓鏄惁鍏ㄩ儴涓烘暟瀛
    绛旓細绛旀锛氬彲浠ヤ娇鐢↗ava涓殑姝e垯琛ㄨ揪寮忔潵鍒ゆ柇瀛楃涓叉槸鍚﹀叏閮ㄤ负鏁板瓧銆傚叿浣撳彲浠ヤ娇鐢╜matches`鏂规硶鍜屾鍒欒〃杈惧紡`"^[0-9]+$"`鏉ュ垽鏂傚鏋滆繑鍥瀈true`锛屽垯琛ㄧず瀛楃涓插叏閮ㄤ负鏁板瓧锛涘鏋滆繑鍥瀈false`锛屽垯琛ㄧず瀛楃涓蹭笉鍏ㄦ槸鏁板瓧銆傝缁嗚В閲婏細1. 姝e垯琛ㄨ揪寮忕畝浠嬶細姝e垯琛ㄨ揪寮忔槸涓绉嶅己澶х殑鏂囨湰澶勭悊宸ュ叿锛屽畠浣跨敤鐗瑰畾鐨勬ā寮忔潵...
  • java涓垽鏂瓧绗︿覆鏄惁涓绾鏁板瓧
    绛旓細鏂规硶涓锛氬埄鐢ㄦ鍒欒〃杈惧紡 public class Testone { public static void main(String[] args){ String str="123456";boolean result=str.matches("[0-9]+");if (result == true) { System.out.println("璇瀛楃涓叉槸绾鏁板瓧");}else{System.out.println("璇ュ瓧绗︿覆涓嶆槸绾暟瀛");}}}鏂规硶浜岋細鍒╃敤P...
  • java涓垽鏂瓧绗︿覆鏄惁涓绾鏁板瓧
    绛旓細鏂规硶涓锛氬埄鐢ㄦ鍒欒〃杈惧紡public class Testone {public static void main(String[] args){String str="123456";boolean result=str.matches("[0-9]+");if (result == true) {System.out.println("璇瀛楃涓叉槸绾鏁板瓧");}else{System.out.println("璇ュ瓧绗︿覆涓嶆槸绾暟瀛");}}}鏂规硶浜岋細鍒╃敤Pattern....
  • Java 涓鎬庢牱鍒ゆ柇涓涓瀛楃涓插叏鏄暟瀛
    绛旓細public boolean isNumeric(String str) { Pattern pattern = Pattern.compile("[0-9]*"); Matcher isNum = pattern.matcher(str); if (!isNum.matches()) { return false; } return true; }浣嗘槸杩欎釜鏂规硶骞朵笉瀹夊叏锛屾病鏈夊瀛楃涓杩涜绌烘牎楠屻 鍦ㄧ▼搴忔墽琛岀殑鏃跺欏緢瀹规槗鎶涘嚭...
  • java涓垽鏂瓧绗︿覆鏄惁涓绾鏁板瓧
    绛旓細閫熷害鏈蹇玕x0d\x0a* 鍒ゆ柇鏄惁涓烘暣鏁 \x0d\x0a* @param str 浼犲叆鐨瀛楃涓 \x0d\x0a* @return 鏄暣鏁拌繑鍥瀟rue,鍚﹀垯杩斿洖false \x0d\x0a*/\x0d\x0apublic static boolean isInteger(String str) { \x0d\x0aPattern pattern = Pattern.compile("^[-\\+]?[\\d]*$"); \x0...
  • java涓濡備綍鍒ゆ柇涓涓瀛楃涓鏄惁閮戒负鏁板瓧
    绛旓細鐢ㄦ鍒欒〃杈惧紡鍒ゆ柇濂戒簡:String str="123";boolean b=str.matches("[0-9]+");濡傛灉b鏄痜alse灏辫〃绀哄叾涓惈鏈夐潪鏁板瓧,濡傛灉涓簍rue灏辫〃绀哄叾涓鍏ㄦ槸鏁板瓧.+琛ㄧず鍖归厤1鍒版棤绌锋.
  • java涓垽鏂涓涓瀛楃涓鏄惁閮戒负鏁板瓧鍜屾埅鍙栨暟瀛
    绛旓細}");}// 鍒ゆ柇涓涓瀛楃涓鏄惁閮戒负鏁板瓧public boolean isDigit(String strNum) {Pattern pattern = Pattern.compile("[0-9]{1,}");Matcher matcher = pattern.matcher((CharSequence) strNum);return matcher.matches();} //鎴彇鏁板瓧 public String getNumbers(String content) { ...
  • java鍒ゆ柇瀛楃涓叉槸閮藉叏鏄暟瀛?姹備竴鏂规硶
    绛旓細棣栧厛灏瀛楃涓鎷嗗垎鎴愬崟涓瓧绗﹀瓨鏀惧湪涓涓暟缁勪腑 鐒跺悗鍒ゆ柇鏁扮粍涓墍鏈夊瓧绗﹀搴旂殑int鏁板艰寖鍥存槸鍚︽槸鍦ˋSCLL涓鏁板瓧鐨勮寖鍥翠箣鍐咃紙姣斿璇'a'鐨刬nt鏁板兼槸97锛 鑻ユ灉鏄殑璇濆氨杩斿洖true 鍚﹀垯杩斿洖false
  • Java涓垽鏂瓧绗︿覆鏄惁涓烘暟瀛鐨勫嚑绉嶆柟娉
    绛旓細int num=Integer.valueOf(str);//鎶婂瓧绗︿覆寮哄埗杞崲涓烘暟瀛 return true;//濡傛灉鏄暟瀛锛岃繑鍥濼rue } catch (Exception e) { return false;//濡傛灉鎶涘嚭寮傚父锛岃繑鍥濬alse} 3.浣跨敤姝e垯琛ㄨ揪寮鍒ゆ柇 String str = "";boolean isNum = str.matches("[0-9]+");//+琛ㄧず1涓垨澶氫釜锛堝"3"鎴"225"锛夛紝...
  • java 姝e垯鍖归厤瀛楃鏄惁涓绾鏁板瓧
    绛旓細java 姝e垯鍖归厤瀛楃涓虹函鏁板瓧鏂规硶锛氬畾涔夋鍒欒〃杈惧紡涓猴細String reg="^\\d+$"鑾峰彇瑕佸垽鏂殑瀛楃涓诧細String str锛//鍙互閫氳繃Scanner浠庢帶鍒跺彴杈撳叆锛屼篃鍙互鐢ㄥ瓧绗︿覆甯搁噺杩涜鍒濆鍖栬皟鐢ㄥ瓧绗︿覆鐨刴atches鏂规硶鍒ゆ柇瀛楃涓蹭负绾暟瀛楁儏鍐碉細str.matches(reg)锛涘鏋滄槸绾暟瀛楄繑鍥炰负true锛屽惁鍒欒繑鍥炰负false锛...
  • 扩展阅读:java判断输入字符串 ... java中 比较的是什么 ... string isempty ... js判断字符串不为空格 ... java if判断字符串 ... java判断字符串相同 ... java查找字符串出现的次数 ... java判断空格 ... java判断输入的是否是数字 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网