如何使用java判斷是不是數(shù)字
前言
在平常的開發(fā)工作中,我們經(jīng)常需要判斷某個值是不是數(shù)字類型。例如判斷用戶輸入的某個值,必須為大于0的數(shù)字。那么,我們應(yīng)該怎樣判斷呢?
1:使用org.apache.commons.lang3.StringUtils的isNumeric()方法
示例如下:
public static void main(String[] args) { String s1 = "10000"; String s2 = "-100"; String s3 = "month"; String s4 = "1023.89"; System.out.println(StringUtils.isNumeric(s1)); System.out.println(StringUtils.isNumeric(s2)); System.out.println(StringUtils.isNumeric(s3)); System.out.println(StringUtils.isNumeric(s4)); }
輸出結(jié)果依次為:
true
false
false
false
由此可知,isNumeric()方法如果是大于0的整數(shù),則返回true。小于0的整數(shù),返回false。如果大于0的小數(shù),則依然返回false。所以,如果想判斷含小數(shù)的字符串,則此方法不適用。
2:用正則表達(dá)式判斷大于0的數(shù)字類型
示例如下:
public static void main(String[] args) { String reg = "^[0-9]+(.[0-9]+)?$"; String s1 = "10000"; String s2 = "100.43"; String s3 = "-100"; String s4 = "month"; String s5 = "1023.89"; System.out.println(s1.matches(reg)); System.out.println(s2.matches(reg)); System.out.println(s3.matches(reg)); System.out.println(s4.matches(reg)); System.out.println(s5.matches(reg)); }
輸出結(jié)果依次為:
true
true
false
false
true
由以上結(jié)果可知,當(dāng)為大于0的整數(shù)或者小數(shù)時,都返回為true。
3:用正則表達(dá)式判斷是否為數(shù)字類型
示例如下:
public static void main(String[] args) { String reg = "^-?[0-9]+(.[0-9]+)?$"; String s1 = "10000"; String s2 = "100.43"; String s3 = "-100"; String s4 = "month"; String s5 = "1023.89"; System.out.println(s1.matches(reg)); System.out.println(s2.matches(reg)); System.out.println(s3.matches(reg)); System.out.println(s4.matches(reg)); System.out.println(s5.matches(reg)); }
輸出結(jié)果依次為:
true
true
true
false
true
綜上,以上三種方法適合不同的場景。人生就要不斷的學(xué)習(xí),加油!美好的風(fēng)景一直在路上!
總結(jié)
到此這篇關(guān)于如何使用java判斷是不是數(shù)字的文章就介紹到這了,更多相關(guān)java判斷是數(shù)字內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
將springboot項(xiàng)目生成可依賴的jar并引入到項(xiàng)目中的方法
SpringBoot項(xiàng)目默認(rèn)打包的是可運(yùn)行jar包,也可以打包成不可運(yùn)行的jar包,本文給大家介紹將springboot項(xiàng)目生成可依賴的jar并引入到項(xiàng)目中的方法,感興趣的朋友一起看看吧2023-11-11MyBatis批量查詢、插入、更新、刪除的實(shí)現(xiàn)示例
由于需要處理短時間內(nèi)大量數(shù)據(jù)入庫的問題,想到了Mybatis的批量操作,本文主要介紹了MyBatis批量查詢、插入、更新、刪除的實(shí)現(xiàn)示例,感興趣的可以了解一下2023-05-05ConstraintValidator類如何實(shí)現(xiàn)自定義注解校驗(yàn)前端傳參
這篇文章主要介紹了ConstraintValidator類實(shí)現(xiàn)自定義注解校驗(yàn)前端傳參的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-06-06SpringBoot構(gòu)造器注入循環(huán)依賴及解決方案
這篇文章主要介紹了SpringBoot構(gòu)造器注入循環(huán)依賴及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03詳解PowerDesigner之CDM、PDM、SQL之間轉(zhuǎn)換
這篇文章主要介紹了詳解PowerDesigner之CDM、PDM、SQL之間轉(zhuǎn)換的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-10-10Java開發(fā)如何把數(shù)據(jù)庫里的未付款訂單改成已付款
這篇文章主要介紹了Java開發(fā)如何把數(shù)據(jù)庫里的未付款訂單改成已付款,先介紹MD5算法,簡單的來說,MD5能把任意大小、長度的數(shù)據(jù)轉(zhuǎn)換成固定長度的一串字符,實(shí)現(xiàn)思路非常簡單需要的朋友可以參考下2022-11-11