关于JAVA基础知识

来源:百度知道 编辑:UC知道 时间:2024/06/01 07:46:35
public class tan{
public static void main(String arg[]){
int a=25,b=3;
boolean d=a<b;
System.out.println("a<b="+d);
int e=3;
if(e!=0 && a/e>5)
System.out.println("a/e="+a/e);
int f=0;
if(f!=0 && a/f>5)
System.out.println("a/f="+a/f);
else
System.out.println("f="+f);
}
}
书本里写着:第二个if语句在运行时不会发生除0溢出的错误,因为e!=0为false,所以不需要对a/e进行运算...........就是对e!=0为false不明白....e!=0为ture吗???........请大家讲解下..谢谢

首先你写错了应该是“因为f!=0为false,所以不需要对a/f进行运算....”
因为&&是并且逻辑运算符,表示只有当两个条件都满足时整个if条件判断才为true 其里面的代码才会被执行的,所以你上面已经int f=0;了所以f!=0这里已经为false了当然就不会继续去判断a/f>5了。程序会跳过这个if(){}而执行下面的代码。

才子_辉祝您愉快!

因为你上面已经定义了f=0了,所以 f!=0 就为false。而你的条件里面是&&运算,所以当前面的条件不满足时,后面的表达试就不运算了,只有当f!=0为true时,才会运算a/f>5。