package com.wdy.reg;
成都創新互聯專注于城關企業網站建設,響應式網站,電子商務商城網站建設。城關網站建設公司,為城關等地區提供建站服務。全流程按需策劃設計,專業設計,全程項目跟蹤,成都創新互聯專業和態度為您提供的服務
public class Calculator {
private int a;
private int b;
public Calculator(int a,int b){
this.a=a;
this.b=b;
}
public int add(){
return a+b;
}
public int sub(){
return a-b;
}
public int mul(){
return a*b;
}
public int div(){
return a/b;
}
public static void main(String[] args) {
Calculator cal=new Calculator(12, 4);
System.out.println(cal.add());
}
}
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
while(n 100 || n 999){
System.out.println("對不起,您的輸入有誤,請重新輸入一個三位數:");
n = sc.nextInt();
}
int a = n%10;//a是個位數;
int b = (n%100)/10;//b是十位數;
int c = n/100;//c是百位數;
int sum = a + b + c;
System.out.println("百位數是:"+c+"\t十位數是:"+b+"\t個位數是:"+a);
System.out.println("各位相加之和是:"+ sum);
}
}
分析題目
NumberFormatException,數字格式異常,常見于由字符串轉換到數字的時候會出現
比如abc2.0--轉換成數字時,系統就會拋出這個異常。
ArithmeticException ,除0異常。這個異常常見于整數除整數,如果被除數是0,那么會拋出這個異常。但是提示要求是小數除小數。double小數就算是0,那么在存儲的時候也不是簡單的0,而可能是0.00000000001等情況,那么除零異常就不會被拋出。我們可以自己手動判斷被除數是否等于0,如果等于0,那么我們手動拋出該異常,然后進行捕獲
參考代碼一:簡潔版
import?java.util.Scanner;
public?class?DivDemoSp?{
public?static?void?main(String[]?args)?{
Scanner?sc?=?new?Scanner(System.in);
while(true){
try{
System.out.println("輸入除數");
double?d1?=?Double.parseDouble(sc.nextLine());
System.out.println("輸入被除數");
double?d2?=?Double.parseDouble(sc.nextLine());
if(d2==0){
throw?new?ArithmeticException("捕獲到除0異常~~!!");//手動拋出除零異常
}
double?d3?=?d1?/?d2;
System.out.println("計算結果:"?+?d1?+?"/"?+?d2?+?"="?+?d3);
break;//如果能正常運行到這里,說明前面的輸入都是正確的,所以可以跳出循環了
}catch(NumberFormatException?e1){//捕獲數字格式異常
System.out.println("捕獲到數字格式異常");
continue;
}catch?(ArithmeticException?e2)?{//捕獲到除零異常
System.out.println(e2.getMessage());
continue;
}
}
}
}
測試代碼
輸入除數
12
輸入被除數
捕獲到除0異常~~!!
輸入除數
12
輸入被除數
agc
捕獲到數字格式異常
輸入除數
12
輸入被除數
0.5
計算結果:12.0/0.5=24.0
參考代碼二:
public?class?DivDemo?{
static?Scanner?sc?=?new?Scanner(System.in);//?定義一個掃描器,用于讀取輸入信息
public?static?void?main(String[]?args)?{//?main方法
div();//?調用除法方法
}
//div方法,用于得到2個小數,并且進行除法運算,如果被除數為0.拋出除零異常
static?void?div()?{
double?d1?=?getNum("輸入???除數");//?調用輸入數字的方法
double?d2?=?getNum("輸入被除數");
try?{
if?(d2?==?0)?{//如果被除數等于0,那么拋出除零異常
throw?new?ArithmeticException("捕獲到除零異常!!!");
}
double?d3?=?d1?/?d2;
System.out.println("計算結果:"?+?d1?+?"/"?+?d2?+?"="?+?d3);
//?div();//可以重新調用div方法,再次進行輸入
}?catch?(ArithmeticException?exception)?{//捕獲到除零異常
System.out.println(exception.getMessage());//打印出異常信息
//?div();//當捕獲異常后,也可以重新調用div方法,再次進行輸入
}
}
//getNum方法,用于得到一個數字
static?double?getNum(String?tips)?{
double?dnum;//?定義一個小數變量
while?(true)?{
try?{
System.out.println(tips);//?顯示提示文字
String?s1?=?sc.nextLine();//?讀取輸入的一行信息
dnum?=?Double.parseDouble(s1);//?如果可以把輸入的信息轉換成數字就跳出循環,
//?如果無法把信息轉成數字就會報數字格式異常
break;//跳出循環
}?catch?(NumberFormatException?exception)?{//捕獲數字格式異常
System.out.println("捕獲到了數字格式錯誤異常!!!");//提示文字,并且繼續循環
}
}
return?dnum;//返回數字
}
}
運行測試
輸入???除數
1.0
輸入被除數
捕獲到除零異常!!!
輸入???除數
1.0abc
捕獲到了數字格式錯誤異常!!!
輸入???除數
1.0
輸入被除數
0.5
計算結果:1.0/0.5=2.0
文章題目:用java寫出求商的代碼,java怎么求商
網站路徑:http://m.kartarina.com/article36/heigsg.html
成都網站建設公司_創新互聯,為您提供網站設計公司、動態網站、App開發、、小程序開發、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯