當前位置:首頁 » 編程語言 » java數字格式異常

java數字格式異常

發布時間: 2022-08-08 10:12:28

java程序數據格式異常如何調試

先要看報的什麼異常,然後在看一下異常內容也就是cause by後面的內容.最後具體到哪個類的哪一行報錯.然後再對這一行進行檢查修改等.

Ⅱ java.lang.NumberFormatException報錯

java.lang.NumberFormatException數字格式異常。後面有 For input string: "2018年3月20日" 提示,當前想把 "2018年3月20日 " 轉換成數字類型時出錯了

Ⅲ java String轉int失敗是什麼異常

java.lang.NumberFormatException
當應用程序試圖將字元串轉換成一種數值類型,但該字元串不能轉換為適當格式時,拋出該異常

如下代碼:

publicceshi{
publicstaticvoidmain(String[]args){
Stringstr="sdf";
inti=Integer.parseInt(str);//此處會報異常
}
}

Ⅳ java.lang.NumberFormatException: For input string: "6.0"

可以這樣:Double.parseDouble(n.equals("")?"0":n);

註:n是你需要轉換的字元串。

因為:java.lang.NumberFormatException: For input string: " "

這個異常是說,在將字元串轉換為number的時候格式化錯誤。

「」空的字元串有對應的數值嗎,這里顯然沒有,所以就一個問題,如上即可。

(4)java數字格式異常擴展閱讀:

注意事項

如果傳入的值不為null或「」可以正常運行不報錯,如果為空值就會出現任如下異常。

by: java.lang.NumberFormatException: For input string: "null"

at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

at java.lang.Integer.parseInt(Integer.java:580)

at java.lang.Integer.parseInt(Integer.java:615)

這里的

For input string: "null"

並不是指傳入的值為空,而是指傳入的字元串為「null」,而「null」並不能被StringUtils.split()切割,進而不能被Integer.parseInt()調用,所以會報錯。

if(customerIdStr != null && !customerIdStr.equals("") ){

String[] customerIds = customerIdStr.split(",");

//將字元串客戶ID 轉換為整數ID

for (String idStr : customerIds) {

Integer id = Integer.parseInt(idStr);

customerRepository.updatefixedAreaId(fixedAreaId,id);

}

}else{

return;

}

所以只需要在上面的判斷語句後面再加一個判斷傳入的參數是否不為「null」的條件即可解決此類異常問題。

if(customerIdStr != null && !customerIdStr.equals("") && !customerIdStr.equals("null")){

String[] customerIds = customerIdStr.split(",")

Ⅳ java計算m選n的組合,要求能捕獲輸入的數字格式異常(NumberFormalException)

packageplay;

importjava.util.Scanner;

/**
*計算組合
*
*@authorJu
*@dateApr23,2015
*/
publicclassTest3{

/**
*計算階乘
*
*@paramnumber
*@return
*/
privatestaticlongfactorial(longnumber){

longsum=number;
longcount=number;
while(count!=1){
count--;
sum*=count;

}
returnsum;
}

/**
*計算組合
*
*@paramm
*@paramn
*@return
*/
(longm,longn){

longmFac=factorial(m);
longnFac=factorial(n);
longmSubNFac=factorial(m-n);
longresult=mFac/(nFac*mSubNFac);

returnresult;
}

publicstaticvoidmain(String[]args){
longm=1;
longn=1;
Scannersc=newScanner(System.in);

System.out.print(" 請輸入m:");
booleanflag=true;
while(flag){
StringmStr=sc.next();
try{
m=Long.parseLong(mStr);
flag=false;
}catch(NumberFormatExceptione){
System.out.print(" 格式錯誤,請輸入m:");
}
}

System.out.print(" 請輸入n:");
flag=true;
while(flag){
StringnStr=sc.next();
try{
n=Long.parseLong(nStr);
if(n<=0||n>m){
System.out.print(" n不能小於1且不能大於m,請重新輸入n:");
}else{
flag=false;
}
}catch(NumberFormatExceptione){
System.out.print(" 格式錯誤,請輸入n:");
}
}

longresult=combinatorial(m,n);

System.out.println("m選n的組合為:"+result);
}
}

Ⅵ java怎麼判斷異常類型

1. java.lang.nullpointerexception

這個異常大家肯定都經常遇到,異常的解釋是"程序遇上了空指針",簡單地說就是調用了未經初始化的對象或者是不存在的對象,這個錯誤經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。對數組操作中出現空指針,很多情況下是一些剛開始學習編程的朋友常犯的錯誤,即把數組的初始化和數組元素的初始化混淆起來了。數組的初始化是對數組分配需要的空間,而初始化後的數組,其中的元素並沒有實例化,依然是空的,所以還需要對每個元素都進行初始化(如果要調用的話)

2. java.lang.classnotfoundexception

這個異常是很多原本在jb等開發環境中開發的程序員,把jb下的程序包放在wtk下編譯經常出現的問題,異常的解釋是"指定的類不存在",這里主要考慮一下類的名稱和路徑是否正確即可,如果是在jb下做的程序包,一般都是默認加上package的,所以轉到wtk下後要注意把package的路徑加上。

3. java.lang.arithmeticexception

這個異常的解釋是"數學運算異常",比如程序中出現了除以零這樣的運算就會出這樣的異常,對這種異常,大家就要好好檢查一下自己程序中涉及到數學運算的地方,公式是不是有不妥了。

4. java.lang.

這個異常相信很多朋友也經常遇到過,異常的解釋是"數組下標越界",現在程序中大多都有對數組的操作,因此在調用數組的時候一定要認真檢查,看自己調用的下標是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變數表示下標)調用就經常出錯了,還有一種情況,是程序中定義的數組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候,最好先查看一下數組的length,以免出現這個異常。

5. java.lang.illegalargumentexception

這個異常的解釋是"方法的參數錯誤",很多j2me的類庫中的方法在一些情況下都會引發這樣的錯誤,比如音量調節方法中的音量參數如果寫成負數就會出現這個異常,再比如g.setcolor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。

6. java.lang.illegalaccessexception

這個異常的解釋是"沒有訪問許可權",當應用程序要調用一個類,但當前的方法即沒有對該類的訪問許可權便會出現這個異常。對程序中用了package的情況下要注意這個異常。

其他還有很多異常,我就不一一列舉了,我要說明的是,一個合格的程序員,需要對程序中常見的問題有相當的了解和相應的解決辦法,否則僅僅停留在寫程序而不會改程序的話,會極大影響到自己的開發的。關於異常的全部說明,在api里都可以查閱。

算術異常類:ArithmeticExecption

空指針異常類:NullPointerException

類型強制轉換異常:ClassCastException

數組負下標異常:NegativeArrayException

數組下標越界異常:

違背安全原則異常:SecturityException

文件已結束異常:EOFException

文件未找到異常:FileNotFoundException

字元串轉換為數字異常:NumberFormatException

操作資料庫異常:SQLException

輸入輸出異常:IOException

方法未找到異常:NoSuchMethodException

java.lang.AbstractMethodError

抽象方法錯誤。當應用試圖調用抽象方法時拋出。

java.lang.AssertionError

斷言錯。用來指示一個斷言失敗的情況。

java.lang.ClassCircularityError

類循環依賴錯誤。在初始化一個類時,若檢測到類之間循環依賴則拋出該異常。

java.lang.ClassFormatError

類格式錯誤。當Java虛擬機試圖從一個文件中讀取Java類,而檢測到該文件的內容不符合類的有效格式時拋出。

java.lang.Error

錯誤。是所有錯誤的基類,用於標識嚴重的程序運行問題。這些問題通常描述一些不應被應用程序捕獲的反常情況。

java.lang.ExceptionInInitializerError

初始化程序錯誤。當執行一個類的靜態初始化程序的過程中,發生了異常時拋出。靜態初始化程序是指直接包含於類中的static語句段。

java.lang.IllegalAccessError

違法訪問錯誤。當一個應用試圖訪問、修改某個類的域(Field)或者調用其方法,但是又違反域或方法的可見性聲明,則拋出該異常。

java.lang.IncompatibleClassChangeError

不兼容的類變化錯誤。當正在執行的方法所依賴的類定義發生了不兼容的改變時,拋出該異常。一般在修改了應用中的某些類的聲明定義而沒有對整個應用重新編譯而直接運行的情況下,容易引發該錯誤。

java.lang.InstantiationError

實例化錯誤。當一個應用試圖通過Java的new操作符構造一個抽象類或者介面時拋出該異常.

java.lang.InternalError

內部錯誤。用於指示Java虛擬機發生了內部錯誤。

java.lang.LinkageError

鏈接錯誤。該錯誤及其所有子類指示某個類依賴於另外一些類,在該類編譯之後,被依賴的類改變了其類定義而沒有重新編譯所有的類,進而引發錯誤的情況。

java.lang.NoClassDefFoundError

未找到類定義錯誤。當Java虛擬機或者類裝載器試圖實例化某個類,而找不到該類的定義時拋出該錯誤。

java.lang.NoSuchFieldError

域不存在錯誤。當應用試圖訪問或者修改某類的某個域,而該類的定義中沒有該域的定義時拋出該錯誤。

java.lang.NoSuchMethodError

方法不存在錯誤。當應用試圖調用某類的某個方法,而該類的定義中沒有該方法的定義時拋出該錯誤。

java.lang.OutOfMemoryError

內存不足錯誤。當可用內存不足以讓Java虛擬機分配給一個對象時拋出該錯誤。

java.lang.StackOverflowError

堆棧溢出錯誤。當一個應用遞歸調用的層次太深而導致堆棧溢出時拋出該錯誤。

java.lang.ThreadDeath

線程結束。當調用Thread類的stop方法時拋出該錯誤,用於指示線程結束。

java.lang.UnknownError

未知錯誤。用於指示Java虛擬機發生了未知嚴重錯誤的情況。

java.lang.UnsatisfiedLinkError

未滿足的鏈接錯誤。當Java虛擬機未找到某個類的聲明為native方法的本機語言定義時拋出。

java.lang.UnsupportedClassVersionError

不支持的類版本錯誤。當Java虛擬機試圖從讀取某個類文件,但是發現該文件的主、次版本號不被當前Java虛擬機支持的時候,拋出該錯誤。

java.lang.VerifyError

驗證錯誤。當驗證器檢測到某個類文件中存在內部不兼容或者安全問題時拋出該錯誤。

java.lang.VirtualMachineError

虛擬機錯誤。用於指示虛擬機被破壞或者繼續執行操作所需的資源不足的情況。

java.lang.ArithmeticException

算術條件異常。譬如:整數除零等。

java.lang.

數組索引越界異常。當對數組的索引值為負數或大於等於數組大小時拋出。

java.lang.ArrayStoreException

數組存儲異常。當向數組中存放非數組聲明類型對象時拋出。

java.lang.ClassCastException

類造型異常。假設有類A和B(A不是B的父類或子類),O是A的實例,那麼當強制將O構造為類B的實例時拋出該異常。該異常經常被稱為強制類型轉換異常。

java.lang.ClassNotFoundException

找不到類異常。當應用試圖根據字元串形式的類名構造類,而在遍歷CLASSPAH之後找不到對應名稱的class文件時,拋出該異常。

java.lang.CloneNotSupportedException

不支持克隆異常。當沒有實現Cloneable介面或者不支持克隆方法時,調用其clone()方法則拋出該異常。

java.lang.

枚舉常量不存在異常。當應用試圖通過名稱和枚舉類型訪問一個枚舉對象,但該枚舉對象並不包含常量時,拋出該異常。

java.lang.Exception

根異常。用以描述應用程序希望捕獲的情況。

java.lang.IllegalAccessException

違法的訪問異常。當應用試圖通過反射方式創建某個類的實例、訪問該類屬性、調用該類方法,而當時又無法訪問類的、屬性的、方法的或構造方法的定義時拋出該異常。

java.lang.IllegalMonitorStateException

違法的監控狀態異常。當某個線程試圖等待一個自己並不擁有的對象(O)的監控器或者通知其他線程等待該對象(O)的監控器時,拋出該異常。

java.lang.IllegalStateException

違法的狀態異常。當在Java環境和應用尚未處於某個方法的合法調用狀態,而調用了該方法時,拋出該異常。

java.lang.IllegalThreadStateException

違法的線程狀態異常。當縣城尚未處於某個方法的合法調用狀態,而調用了該方法時,拋出異常。

java.lang.IndexOutOfBoundsException

索引越界異常。當訪問某個序列的索引值小於0或大於等於序列大小時,拋出該異常。

java.lang.InstantiationException

實例化異常。當試圖通過newInstance()方法創建某個類的實例,而該類是一個抽象類或介面時,拋出該異常。

java.lang.InterruptedException

被中止異常。當某個線程處於長時間的等待、休眠或其他暫停狀態,而此時其他的線程通過Thread的interrupt方法終止該線程時拋出該異常。

java.lang.NegativeArraySizeException

數組大小為負值異常。當使用負數大小值創建數組時拋出該異常。

java.lang.NoSuchFieldException

屬性不存在異常。當訪問某個類的不存在的屬性時拋出該異常。

java.lang.NoSuchMethodException

方法不存在異常。當訪問某個類的不存在的方法時拋出該異常。

java.lang.NullPointerException

空指針異常。當應用試圖在要求使用對象的地方使用了null時,拋出該異常。譬如:調用null對象的實例方法、訪問null對象的屬性、計算null對象的長度、使用throw語句拋出null等等。

java.lang.NumberFormatException

數字格式異常。當試圖將一個String轉換為指定的數字類型,而該字元串確不滿足數字類型要求的格式時,拋出該異常。

java.lang.RuntimeException

運行時異常。是所有Java虛擬機正常操作期間可以被拋出的異常的父類。

java.lang.SecurityException

安全異常。由安全管理器拋出,用於指示違反安全情況的異常。

java.lang.

字元串索引越界異常。當使用索引值訪問某個字元串中的字元,而該索引值小於0或大於等於序列大小時,拋出該異常。

java.lang.TypeNotPresentException

類型不存在異常。當應用試圖

Ⅶ java程序報異常:java.lang.NumberFormatException:For input string: "∞"

意思就是你輸入的數字格式不正確,不要輸入特殊符號,無窮大是不識別的

Ⅷ Java 常見的異常有哪幾種,有什麼區別

  1. NullPointerException: 空指針異常。菜鳥編程經驗發現這個異常是經常會發生的,屬於運行時異常。

2.ClassCastException: 類型強制轉換異常。Java的一些語法知識不太熟悉的時候會發生的異常。

3.: 數組下標越界異常。特別常見的一個異常,粗心的程序員都會犯的錯誤。

4.ArithmeticException:算術運算異常。算術跟我水平差不多的你有沒有犯過類似的錯誤呢??

5.NumberFormatException: 數字格式異常。什麼是數字格式異常呢?一個例子說明一切。

熱點內容
php衰落 發布:2022-10-05 04:51:56 瀏覽:374
phpgdyum 發布:2022-10-05 04:49:28 瀏覽:245
資料庫jsp 發布:2022-10-05 04:44:37 瀏覽:47
關系型資料庫優點 發布:2022-10-05 04:39:58 瀏覽:685
必修三演算法 發布:2022-10-05 04:39:50 瀏覽:564
怎麼設置手機圖案解鎖密碼忘了怎麼辦 發布:2022-10-05 04:36:40 瀏覽:499
家用路由器如何配置靜態ip 發布:2022-10-05 04:34:10 瀏覽:186
房間裝修如何配置開關 發布:2022-10-05 04:29:28 瀏覽:159
win7注冊表是哪個文件夾 發布:2022-10-05 04:28:06 瀏覽:173
oracle資料庫清空 發布:2022-10-05 04:24:42 瀏覽:124