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;
?return a/b;
public static void main(String[] args) {
?System.out.println(cal.add());
import java.util.Scanner;
public class Test {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println("对不起,您的输入有误,请重新输入一个三位数:");
n = sc.nextInt();
int a = n;//a是个位数;
int b = (n0)/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,数字格式异常,常见于由字符串转换到数字的时候会出现
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("输入被除数");
throw?new?ArithmeticException("捕获到除0异常~~!!");//手动抛出除零异常
break;//如果能正常运行到这里,说明前面的输入都是正确的,所以可以跳出循环了
}catch(NumberFormatException?e1){//捕获数字格式异常
System.out.println("捕获到数字格式异常");
continue;
测试代码
输入除数
输入被除数
捕获到除0异常~~!!
agc
捕获到数字格式异常
参考代码二:
public?class?DivDemo?{
static?Scanner?sc?=?new?Scanner(System.in);//?定义一个扫描器,用于读取输入信息
public?static?void?main(String[]?args)?{//?main方法
double?d1?=?getNum("输入?除数");//?调用输入数字的方法
try?{
throw?new?ArithmeticException("捕获到除零异常!!!");
}?catch?(ArithmeticException?exception)?{//捕获到除零异常
System.out.println(exception.getMessage());//打印出异常信息
//getNum方法,用于得到一个数字
static?double?getNum(String?tips)?{
double?dnum;//?定义一个小数变量
while?(true)?{
System.out.println(tips);//?显示提示文字
String?s1?=?sc.nextLine();//?读取输入的一行信息
dnum?=?Double.parseDouble(s1);//?如果可以把输入的信息转换成数字就跳出循环,
//?如果无法把信息转成数字就会报数字格式异常
break;//跳出循环
}?catch?(NumberFormatException?exception)?{//捕获数字格式异常
System.out.println("捕获到了数字格式错误异常!!!");//提示文字,并且继续循环
return?dnum;//返回数字
运行测试
输入?除数
①0
捕获到除零异常!!!
①0abc
捕获到了数字格式错误异常!!!
以上就是土嘎嘎小编为大家整理的用java写出求商的代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!