基本程式已寫好,現在要使該程式具備容錯能力(處理資料溢位問題)
要求:
1、增加一個常量MAX_VALUE,其值為當前充許的最大精度(目前設定為8個數字);
2、 增加一個private 資料成員 String statusFlag,用于保存engine的狀態。例如"E" 代表錯誤, " "代表正常. 這些串設成符號常量。
3、增加一個public String status() 方法,用于回傳statusFlag;
public String status(){
return statusFlag;}
4、增加一個public boolean isError(),如果engine處理出錯狀態,則回傳true.
5、增加一個private boolean isError(double n),用于回傳計算結果是否太大;
6、修改operate方法,使其能檢測計算器的狀態,且使clear,all_clear均能處理statusFlag.
其中operate方法:
public void operate(char nc) { // nc is next opcode(下一個運算子)
//當計算器處于例外狀態時
//當計算器處于正常狀態時
switch (nc) {
case 'A': //nc=All Clear
allClear();
return; // All Clear
case 'C': //nc=Clear
clear();
return; // Clear
case 'N': // sign change(負號)
if (argcnt == 1) //運算元為1,輸出ans(計算結果),比如輸入12則輸出12
ans = -ans;
else //運算元為2,輸出arg(第二個運算元),負號賦予給第二個運算元arg = -arg
arg = -arg;
return;
default: // +-*/= (如果沒有任何case運算式和開關值匹配,則控制傳遞給default)
compute();//在下面給出具體方法
op = nc; // new opcode,將下一個運算子賦值給當前運算子
}
}
uj5u.com熱心網友回復:
噢 我自己琢磨著初見成效了好開心轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/223074.html
標籤:Eclipse
上一篇:請問這個泛型如何理解?
下一篇:SpringBoot自動配置原理
