为了账号安全,请及时绑定邮箱和手机立即绑定

求大神解答!!!

谁能告诉我5/2,这个除数怎么传递,我的怎么总是5/0,学者后面忘着前面......

import java.util.InputMismatchException;
import java.util.Scanner;
import javax.print.attribute.standard.Finishings;
public class Abc {
int num=0;
public static void main(String[] args) {
// TODO Auto-generated method stub
int num=0;
Abc abc=new Abc();
System.out.println("请输入一个值:");
try{
System.out.println("5/"+num+"结果为:"+abc.mat());
}catch (ArithmeticException e) {
// TODO: handle exception
System.out.println("输入错误:: "+e);
}
catch (InputMismatchException e) {
// TODO: handle exception
System.out.println("请输入整数 :"+e);
}
finally {
}
}
public int geter() throws InputMismatchException {
Scanner scanner=new Scanner(System.in);
num=scanner.nextInt();
scanner.close();
return num;
}
public  int  mat() {
return 5/geter();
}
}

请输入一个值:

2

5/0结果为:2


正在回答

4 回答

https://img1.sycdn.imooc.com//5c4965c20001ec4010850531.jpg兄弟,仔细看一下代码哈...

0 回复 有任何疑惑可以回复我~
#1

抽象驴 提问者

蒙了,懵的一逼,能不能给我发个完整代码,谢了
2019-01-24 回复 有任何疑惑可以回复我~
#2

qq_北纬369_0 回复 抽象驴 提问者

你一行一行对吧,回复最多300字,发不了代码,怀疑是你主函数num=0没去掉
2019-01-24 回复 有任何疑惑可以回复我~
#3

抽象驴 提问者 回复 qq_北纬369_0

555,怎么这么难啊!!!
2019-01-24 回复 有任何疑惑可以回复我~
#4

qq_北纬369_0 回复 抽象驴 提问者

额...你可以更新一下提问的代码么...
2019-01-24 回复 有任何疑惑可以回复我~
查看1条回复

不要用2试,你用别的数字试下?除数就是0了,因为你这里调用的num为0,并不是你输入的值

0 回复 有任何疑惑可以回复我~

5/num 不是么.... 怎么5/mat

https://img1.sycdn.imooc.com//5c483b65000173a911800561.jpg

0 回复 有任何疑惑可以回复我~
#1

抽象驴 提问者

你这里的num值始终都是初始值0
2019-01-24 回复 有任何疑惑可以回复我~

System.out.println("5/"+num+"结果为:"+abc.mat()); 语句执行顺序的问题,num先拼接了之后才调用了mat方法

可以拆一下:

int mat = abc.mat();

System.out.println("5/"+num+"结果为:"+mat);

0 回复 有任何疑惑可以回复我~
#1

qq_北纬369_0

另外还有一个问题,把main函数里的int num = 0;去掉...
2019-01-23 回复 有任何疑惑可以回复我~
#2

抽象驴 提问者

试了,不对, int mat = abc.mat(); System.out.println("5/"+num+"结果为:"+mat);如果这样操作的话,5/mat,这时的mat相当于结算后的结果,我输入2是没问题,因为结果就是2,但是如果输入1的话结果是5,5/后面跟的也是5
2019-01-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409787    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

求大神解答!!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信