
java 运行结果 为什么是1 -1 0 而不是1 ,0,0 5
publicclassIfElse{staticintresult=0;staticvoidtest(inttestval,inttarget){if(testval>t...
public class IfElse {
static int result=0;
static void test(int testval,int target){
if(testval>target)
result=+1;
else if(testval<target)
result=-1;
else
result=0;
}
public static void main(String[] args){
test(10,5);
System.out.println(result);
test(5,10);
System.out.println(result);
test(5,5);
System.out.println(result);
}
} 展开
static int result=0;
static void test(int testval,int target){
if(testval>target)
result=+1;
else if(testval<target)
result=-1;
else
result=0;
}
public static void main(String[] args){
test(10,5);
System.out.println(result);
test(5,10);
System.out.println(result);
test(5,5);
System.out.println(result);
}
} 展开
2个回答
展开全部
这应该是学if else简写遇到的把,新手的话推荐把大括号加上
你的result是static类型的。
①只走了test()代码中的第一个if就结束了,是1
②调用test方法,第一个if条件不符,向下走到else,else语句里是另一个ifelse,所以进入第二个if结束
③是走到最后的else
换个方式说,你的test方法,我给你加俩大括号就懂了
static void test(int testval, int target) {
if (testval > target)
result = +1;
else { // 这个
if (testval < target)
result = -1;
else
result = 0;
} //和这个
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |