Ⅰ java判斷list里的數據是否為純數字
建議遍歷一下list
然後用正則判斷,不推薦用異常捕獲的方法。
例如:List
list
=
***.findName(1);
String
regex
=
"^\\d+$";
for(int
i
=
0;i<list.size();i++){
String
str
=
list.get(i);
if(str.matches(regex)){
System.out.println(str);
}
}
Ⅱ java 里怎麼判斷一個字元串是不是純數字
publicclassAllNumber{
/**
*使用Double.parseDouble方法判斷字元串是不是為數字
*
*@paramnumber
*字元串
*@return
*/
publicstaticbooleanisNumber(Stringnumber){
if(null==number){
returnfalse;
}
try{
doublenum=Double.parseDouble(number);//轉換成功則是數字
}catch(Exceptione){
//TODO:handleexception
returnfalse;
}
returntrue;
}
/**
*使用正則表達式判斷字元串是不是為數字
*
*@paramnumber
*字元串
*@return
*/
(Stringnumber){
if(null==number){
returnfalse;
}
Stringregex="^[-]{0,1}[0-9]{1,}[.]{0,1}[0-9]{1,}$";
returnnumber.matches(regex);
}
publicstaticvoidmain(String[]args){
System.out.println(isNumber("1234.90"));
System.out.println(isNumberByRegex("-0123.9"));
}
}
Ⅲ java中判斷字元串是否為純數字
Java中判斷字元串是否為數字的方法:
1.用JAVA自帶的函數
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.用正則表達式
首先要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.使用org.apache.commons.lang
org.apache.commons.lang.StringUtils;
boolean isNunicodeDigits=StringUtils.isNumeric("aaa123456789");
http://jakarta.apache.org/commons/lang/api-release/index.html下面的解釋:
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
上面三種方式中,第二種方式比較靈活。
第一、三種方式只能校驗不含負號「-」的數字,即輸入一個負數-199,輸出結果將是false;
而第二方式則可以通過修改正則表達式實現校驗負數,將正則表達式修改為「^-?[0-9]+」即可,修改為「-?[0-9]+.?[0-9]+」即可匹配所有數字。
Ⅳ 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. 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("該字元串是純數字");}else{System.out.println("該字元串不是純數字");}}}
Ⅳ java 如何構造一個純數字字元串
我想的是你應該要一個隨機生成的java數字字元串方法,不過jdk的AIP裡面有個已經定義好的方法,你可以用用,不過它是當前系統的時間戳
long l=System.currentTimeMillis();
這個可以,但位數不固定,你可以拼接上一個隨機數,然後使用字元串截取的方式讓長度一致。
給你一個方法:
public String newString(){
long l=new Random().nextLong();
return System.currentTimeMillis()+""+(l<0?-l:l);
}
結果可以參考:
Ⅵ java中判斷字元串是否為純數字
//方法一:用JAVA自帶的函數x0dx0apublic static boolean isNumeric(String str)x0dx0a{ for (int i = str.length();--i>=0;)x0dx0a{x0dx0aif (!Character.isDigit(str.charAt(i)))x0dx0a{ x0dx0areturn false;6 x0dx0a}x0dx0a}x0dx0areturn true;x0dx0a}x0dx0ax0dx0a/*方法二:推薦,速度最快x0dx0a* 判斷是否為整數 x0dx0a* @param str 傳入的字元串 x0dx0a* @return 是整數返回true,否則返回false x0dx0a*/x0dx0apublic static boolean isInteger(String str) { x0dx0aPattern pattern = Pattern.compile("^[-\+]?[\d]*$"); x0dx0areturn pattern.matcher(str).matches(); x0dx0a}x0dx0a//方法三:public static boolean isNumeric(String str){x0dx0aPattern pattern = Pattern.compile("[0-9]*"); return pattern.matcher(str).matches(); x0dx0a}x0dx0ax0dx0a//方法四:public final static boolean isNumeric(String s) { if (s != null && !"".equals(s.trim())) return s.matches("^[0-9]*$"); elsex0dx0areturn false;x0dx0a} x0dx0a//方法五:用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;x0dx0a} return true;x0dx0a}
Ⅶ java 正則匹配字元是否為純數字
java 正則匹配字元為純數字方法:
定義正則表達式為:
Stringreg="^\d+$"
獲取要判斷的字元串:
Stringstr;//可以通過Scanner從控制台輸入,也可以用字元串常量進行初始化
調用字元串的matches方法判斷字元串為純數字情況:
str.matches(reg);
如果是純數字返回為true,否則返回為false;
Ⅷ Java 獲得純數字格式的時間
Java 獲得純數字格式的時間有下面三種方法
方法 一
System.currentTimeMillis();
方法 二
Calendar.getInstance().getTimeInMillis();
方法 三
new Date().getTime();
以下是效率對比:
import java.util.Calendar;
import java.util.Date;
public class TimeTest {
private static long _TEN_THOUSAND=10000;
public static void main(String[] args) {
long times=1000*_TEN_THOUSAND;
long t1=System.currentTimeMillis();
testSystem(times);
long t2=System.currentTimeMillis();
System.out.println(t2-t1);
testCalander(times);
long t3=System.currentTimeMillis();
System.out.println(t3-t2);
testDate(times);
long t4=System.currentTimeMillis();
System.out.println(t4-t3);
}
public static void testSystem(long times){//use 188
for(int i=0;i<times;i++){
long currentTime=System.currentTimeMillis();
}
}
public static void testCalander(long times){//use 6299
for(int i=0;i<times;i++){
long currentTime=Calendar.getInstance().getTimeInMillis();
}
}
public static void testDate(long times){
for(int i=0;i<times;i++){
long currentTime=new Date().getTime();
}
}
}
因為很簡單我就不加註釋了,每種方法都運行1千萬次,然後查看運行結果
187
7032
297
結果發現 System.currentTimeMillis() 這種方式速度最快
Calendar.getInstance().getTimeInMillis() 這種方式速度最慢,看看源碼會發現,Canlendar因為要處理時區問題會耗費很多的時間。
所以建議多使用第一種方式。
Ⅸ java正則判斷是否是數字
java中使用正則表達式 \d+ 可以判斷是否是純數字(0到9)
importjava.util.regex.Pattern;
publicclassTest{
publicstaticvoidmain(Stringargs[]){
Stringstr="125654";
Patterndigit=Pattern.compile("\d+");
if(digit.matcher(str).matches()){
System.out.println("是純數字");
}else{
System.out.println("不是純數字");
}
}
}
Ⅹ java驗證字元串是否為數字
java中判斷字元串是否為純數字的方法如下:
方法一:Pattern語句
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();
if (result == true) {
System.out.println("該字元串是純數字");
}
else{
System.out.println("該字元串不是純數字");
}
}
}
方法二:正則表達式
public static boolean isNumber(String str){
String reg = "^[0-9]+(.[0-9]+)?$";
return str.matches(reg);
}