黑马程序员技术交流社区
标题:
if else 和while ,for循环和高级for循环的区别
[打印本页]
作者:
李有
时间:
2012-11-26 11:20
标题:
if else 和while ,for循环和高级for循环的区别
if else 和while ,for循环和高级for循环的区别:
这2组语句都能互相替换,
请问他们在使用时有没有什么条件限制?
一般大家都用哪个,为什么用这个
作者:
潘天功
时间:
2012-11-26 13:58
1、if·····else 语句的应用场景:
A:对有限的值进行判断。 但是一般这个时候推荐使用switch。
B:对结果是boolean类型的值进行判断。
C:对范围进行判断。
对条件进行一次判断用if
对条件进行多次判断用循环
2、什么时候使用while循环语句?
while:声明的循环变量在使用后,需要继续使用。例如:
int x = 3;
while(x>0)
{
System.out.println(x);
x--;
}
System.out.println(x);
3、什么时候使用for循环语句?
for:当循环变量只为递增存在时,建议使用for循环。
for(int x=3; x>0; x--)
{
System.out.println(x);
}
System.out.println(x);
4、我觉得for循环和高级for循环没什么区别、只是高级for循环用着比较方便,但是不是太规范,一般推荐用普通for循环。
作者:
王斌
时间:
2012-11-26 16:13
FOR:
只要指定条件为 true 都执行语句块。
for (initialization; test; increment)
statements
参数
initialization
必选项。一个表达式。该表达式只在执行循环前被执行一次。
test
必选项。一个 Boolean 表达式。如果 test 是 true,则 statement 被执行。如果 test 是 false,则循环结束。
increment
必选项。一个表达式。在每次经过循环的最后执行该递增表达式。
statements
可选项。test 是 true 时,要执行的一个或多个语句。可以是复合语句。
说明
循环要执行确定的次数,通常使用 for 循环。
if else
正确的if-else语句格式是:
if(条件){……}
else if(条件){……}
else if(条件){……}
……
如果满足if 中的条件就执行if 块中的语句,否则执行else中的语句
while (){}
括号中加表达式 先判断是否满足表达式,再进行下面大括号中的语句
加强for循环 一般判断是否属于这个类使用在泛型比较多
作者:
黑马-项泽宇
时间:
2012-11-26 17:52
临时写了一个范例来解释,希望你能理解。若有疑问,回复我。
QQ截图20121126175118.jpg
(85.24 KB, 下载次数: 72)
下载附件
2012-11-26 17:51 上传
源代码如下:
package com.learn;
public class Qubie {
/**
* if else、 while、for、高级for 的应用场景与区别
*/
public static void main(String[] args) {
/* 1.判断a是否大于b,输出结果。 */
int a=1;
int b=100;
if(a > b)
{
System.out.println("a大于b");
}
else
{
System.out.println("a小于b");
}
/* 2.判断a是否大于b 如果大于b则将b减去1一直到b等于a为止 */
while(a > b)
{
b--;
}
/* 有两个数组:arr1和arr2,输出arr2中与数组arr1相同位置的元素内容 */
/* 这个时候循环是需要下标的 */
int arr1[] = new int[]{1,2,3,4,5,6,7,8,9};
int arr2[] = new int[]{25,35,45,55,65,75,85,95,105};
int len = arr1.length;
for(int i=0;i<len;i++)
{
System.out.println(arr2[i]);
}
/* 打印数组str的内容 */
String str[] = new String[]{"aaa","bbb","ccc","ddd","eee"};
for(String value:str)
{
System.out.println(value);
}
}
}
复制代码
作者:
王舒玮
时间:
2012-11-26 21:32
if else代码体现:
int age = 10;
if(age > 1) {
System.out.println("大于1");
} else if(age > 2) {
System.out.println("大于2");
} else if(age > 3) {
System.out.println("大于3");
}
下面的代码相当于上面代码的体现:
int age = 10;
if(age > 1) {
System.out.println("大于1");
}
if(age > 2) {
System.out.println("大于2");
}
if(age > 3) {
System.out.println("大于3");
}
for和while的选择:当循环变量是规律性变化时使用for循环:当循环变量是 int类型(整数),使用for循环!但我们知道for中使用i++之类的方式改变循环变量的值,当然i+=2,也行!但是如果这个循环变量它不是规律性的变量,通俗点说也就是咱们不确定程序要循环多少次才会终止,那么就不好在使用for了。这时就需要用while了。
增强for循环
格式:
for(数组或集合中的元素类型 变量名 : 数组或者Collection集合)
{
//这个变量其实就是从数组或者集合中依次取出的元素
}
好处:简化了集合和数组的遍历
代码表现:public class ForDemo {
public static void main(String[] args) {
int[] arr = { 54, 67, 89, 23, 38 };
// 自动的把arr中的元素依次赋值给x
for (int x : arr) {
System.out.println(x);
}
// 字符串数组
String[] strArray = new String[] { "hello", "world", "java" };
for (String str : strArray) {
System.out.println(str);
}
作者:
陈重
时间:
2012-11-26 22:30
我个人的看法是这样的,没必要去记它们的使用条件,记也记不住,写代码时,自己可以试几个数,把程序流程搞清楚才是关键.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2