黑马程序员技术交流社区
标题:
有关IF语句的问题
[打印本页]
作者:
燕国庆
时间:
2012-9-25 09:13
标题:
有关IF语句的问题
本帖最后由 燕国庆 于 2012-9-25 09:18 编辑
1
class IfDemo1
{
public static void main(String[] args)
{
int x=4;
if (x>5)
{
System.out.println("a");
}
else if (x>3)
{
System.out.println("b");
}
else if (x>4)
{
System.out.println("c");
}
else
System.out.println("over!");
}
} 输出地是:b
2
class IfDemo1
{
public static void main(String[] args)
{
int x=4;
if (x>5)
{
System.out.println("a");
}
if (x>3)
{
System.out.println("b");
}
if (x>4)
{
System.out.println("c");
}
else
System.out.println("over!");
}
}
为什么输出地是b over!
上面的两个例子为什么输出地不是一样的?当if else. 与if 两者之间有什么不同吗?有谁可以帮帮忙,求解释谢谢!!!!{:soso_e100:}{:soso_e115:}
作者:
霍明波
时间:
2012-9-25 09:24
首先第一个会输出:b,而第二个会输出:b 与 over,
上面的是一个if语句,只会执行它满足的那条,
而下面的,满足他的有两条,if(x>3) 所以打印 b
if(x>4)中的
else
也满足,索引打印over
作者:
明光照
时间:
2012-9-25 09:25
本来if 和else是连在一起的。if是真就执行if 中的,否则就执行else中的。而单独的写几个if ,那所有的if 都会判断 。你第一个程序等于是判断到 if (x>3)
{
System.out.println("b");
}就停了。而后面一个程序却是每一句都会执行。所以后面的是打印b 和over
作者:
杜正华
时间:
2012-9-25 09:28
package com.aduvm.practice;
1
public class IfDemo1 {
/**
* @param args
*/
public static void main(String[] args)
{
int x=4;
if (x>5) //首先判断4>5吗 ? 不是,接着判断下句
{
System.out.println("a");
}
else if (x>3)//4>3吗?是,所以执行括号里的语句,打印出b
{
System.out.println("b");
}
else if (x>4) //接着判断4>4吗?不是,接着判断
{
System.out.println("c");
}
else //以上条件都不成立吗?不是,所以不打印over
System.out.println("over!");
}
}
2
class IfDemo1
{
public static void main(String[] args)
{
int x=4;
if (x>5) //4大于5吗?不是 接着判断下一句
{
System.out.println("a");
}
if (x>3) //4大于3吗?是,所以打印出b
{
System.out.println("b");
}
if (x>4) //4大于4吗,不是 接着判断下一句
{
System.out.println("c");
}
else //以上条件都不成立吗?不是,所以不打印over
System.out.println("over!");
}
}//为什么输出地是b
复制代码
作者:
董志超
时间:
2012-9-26 10:48
class IfDemo1
{
public static void main(String[] args)
{
int x=4;
if (x>5)
{
System.out.println("a");
}
else if (x>3)
{
System.out.println("b");
//从if到else是一个整体,执行到else(x>3)时条件符合,输出b后结束。
}
else if (x>4)
{
System.out.println("c");
}
else
System.out.println("over!");
}
} 输出地是:b
2
class IfDemo1
{
public static void main(String[] args)
{
int x=4;
if (x>5)
{
System.out.println("a");
}
if (x>3)
{
System.out.println("b");
}
if (x>4)
{
System.out.println("c");
}
else
System.out.println("over!");
}
}
//前两个if各自独立,执行到第二个if条件符合输出b,而第三个if和后面的else是个整体,判断if(x>4)不符合,就执行else语句。输出over。
作者:
王雷
时间:
2012-9-26 11:01
上面的是一个if语句,只会执行它满足的那条,
而下面的,满足他的有两条,if(x>3) 所以打印 b
if(x>4)中的else也满足,索引打印over
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2