黑马程序员-java基础学习(流程控制)
2015-03-30 15:12
239 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
一、判断结构
If语句
If语句有三种结构:
1、if(条件表达式){ /*if后的”{}”可以去除,此时if语句只判断执行他后边的一条执行语句,初学者加上“{}”。*/
执行语句
}
2、if(条件表达式){ /*三元运算符是if else的简写格式,它可以简化if else的代码,但
执行语句 是因为是运算符所以运算完必须要有一个结果,格式如下,
} 变量=(条件表达式)?表达式1:表达式2 */
else{
执行语句
}
3、if(条件表达式){ /*与前边两种结构一样,if else if同样也是单条语句,如果前边的
执行语句 条件语句满足了,就不会向下执行了*/
}
else if(条件表达式){
执行语句
}
。。。。。。
else{
执行语句
}
二、选择结构
Switch语句
Switch语句的四个特点:
1、语句的选择类型只有四种,byte、short、int、char。
2、case之间与default没有顺序。先执行第一个case,没有匹配的case执行default。
3、当语句执行到break时或者语句执行到结尾时,switch语句都会结束(语句末尾处的break可写可不写)。
4、如果case和default里边没有break,那么程序会继续向下执行可执行的语句,而不会再判断case,直到遇到break或者到语句结尾。
例,
int x = 3;
switch(x)//byteshort int char
{
default:
System.out.println("d");
//break;
case4:
System.out.println("a");
//break;
case6:
System.out.println("b");
break;
case2:
System.out.println("c");
break;
}
这条语句在程序执行时,不会优先执行default,而是执行第一个case(case 4),当执行到最后一个case时没有发现正确的选项,此时才会执行default。且由于default内的break被注释掉了,所以程序会继续向下执行,而不会在判断选项是否正确,直到遇到break,语句结束。
if和switch语句很像,在不同的场景要灵活的应用。如果判断的具体数值不多,而且符合byte short int char这四种类型,虽然两个语句都可以使用,建议使用swtich语句,因为效率稍高。其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。
三、循环结构
循环结构有三种,分别是while循环,do while循环和for循环。
1、 while循环
循环结构如下,
while(条件表达式)
{
循环体(执行语句);
}
While循环的结构与if语句结构类似,if语句只执行一次,而while语句当满足条件表达式是会一直执行下去。
2、 do while循环
循环结构如下,
do
{
循环体(执行语句);
}
while (条件表达式);
do while语句会先执行循环体,在判断条件,条件满足,再继续执行循环体,而while语句则是先判断条件,条件满足才会执行循环体。所以do while无论条件是否满足,循环体至少执行一次。
3、 for循环
循环结构如下,
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
for语句和while语句是可以互换的,也就是说用for可以实现的功能用while同样可以实现,但是有一点不同,for语句的初始化变量是在语句内部初始化,当循环结束后变量的内存空间就会消失,从而节省系统内存。所以当变量只为循环的增量存在,控制循环次数的话应该用for循环。例,
for(int x= 0; x<3 ; x++)
{
System.out.println("x="+x);
}
int y=0;
while(y<3)
{
System.out.println("y="+y);
y++;
}
X和y的循环结果是一样的但是y的循环空间在循环结束后依然存在,而x则消失了。
4、 循环语句的其他特点
For循环语句中,初始化表达式和循环后表达式是可以没有的,只要表达式是一个合法的表达式就可以(条件表达式的值必须是真或假,如果条件表达式不写,for循环默认为true)。
当初始化表达式和循环后表达式有多个时应该用“,”隔开。例如可以这样写,
int x = 1;
for(System.out.println("a");x<3 ;System.out.println("c"))
{
System.out.println("d");
x++;
}
编译通过后打印的结果是:adcdc
还可以这样写,
for(int x=0,y=0; x<3 ;x++,y++)
{
System.out.println("d");
}
*最简单的无限循环形式:
1、if(;;){ //默认为true
}
2、while(true){
}
一、判断结构
If语句
If语句有三种结构:
1、if(条件表达式){ /*if后的”{}”可以去除,此时if语句只判断执行他后边的一条执行语句,初学者加上“{}”。*/
执行语句
}
2、if(条件表达式){ /*三元运算符是if else的简写格式,它可以简化if else的代码,但
执行语句 是因为是运算符所以运算完必须要有一个结果,格式如下,
} 变量=(条件表达式)?表达式1:表达式2 */
else{
执行语句
}
3、if(条件表达式){ /*与前边两种结构一样,if else if同样也是单条语句,如果前边的
执行语句 条件语句满足了,就不会向下执行了*/
}
else if(条件表达式){
执行语句
}
。。。。。。
else{
执行语句
}
二、选择结构
Switch语句
Switch语句的四个特点:
1、语句的选择类型只有四种,byte、short、int、char。
2、case之间与default没有顺序。先执行第一个case,没有匹配的case执行default。
3、当语句执行到break时或者语句执行到结尾时,switch语句都会结束(语句末尾处的break可写可不写)。
4、如果case和default里边没有break,那么程序会继续向下执行可执行的语句,而不会再判断case,直到遇到break或者到语句结尾。
例,
int x = 3;
switch(x)//byteshort int char
{
default:
System.out.println("d");
//break;
case4:
System.out.println("a");
//break;
case6:
System.out.println("b");
break;
case2:
System.out.println("c");
break;
}
这条语句在程序执行时,不会优先执行default,而是执行第一个case(case 4),当执行到最后一个case时没有发现正确的选项,此时才会执行default。且由于default内的break被注释掉了,所以程序会继续向下执行,而不会在判断选项是否正确,直到遇到break,语句结束。
if和switch语句很像,在不同的场景要灵活的应用。如果判断的具体数值不多,而且符合byte short int char这四种类型,虽然两个语句都可以使用,建议使用swtich语句,因为效率稍高。其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。
三、循环结构
循环结构有三种,分别是while循环,do while循环和for循环。
1、 while循环
循环结构如下,
while(条件表达式)
{
循环体(执行语句);
}
While循环的结构与if语句结构类似,if语句只执行一次,而while语句当满足条件表达式是会一直执行下去。
2、 do while循环
循环结构如下,
do
{
循环体(执行语句);
}
while (条件表达式);
do while语句会先执行循环体,在判断条件,条件满足,再继续执行循环体,而while语句则是先判断条件,条件满足才会执行循环体。所以do while无论条件是否满足,循环体至少执行一次。
3、 for循环
循环结构如下,
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
for语句和while语句是可以互换的,也就是说用for可以实现的功能用while同样可以实现,但是有一点不同,for语句的初始化变量是在语句内部初始化,当循环结束后变量的内存空间就会消失,从而节省系统内存。所以当变量只为循环的增量存在,控制循环次数的话应该用for循环。例,
for(int x= 0; x<3 ; x++)
{
System.out.println("x="+x);
}
int y=0;
while(y<3)
{
System.out.println("y="+y);
y++;
}
X和y的循环结果是一样的但是y的循环空间在循环结束后依然存在,而x则消失了。
4、 循环语句的其他特点
For循环语句中,初始化表达式和循环后表达式是可以没有的,只要表达式是一个合法的表达式就可以(条件表达式的值必须是真或假,如果条件表达式不写,for循环默认为true)。
当初始化表达式和循环后表达式有多个时应该用“,”隔开。例如可以这样写,
int x = 1;
for(System.out.println("a");x<3 ;System.out.println("c"))
{
System.out.println("d");
x++;
}
编译通过后打印的结果是:adcdc
还可以这样写,
for(int x=0,y=0; x<3 ;x++,y++)
{
System.out.println("d");
}
*最简单的无限循环形式:
1、if(;;){ //默认为true
}
2、while(true){
}
相关文章推荐
- 黑马程序员——Java基础语法(二)---流程控制与函数
- 黑马程序员_Java基础_常用基础内容(进制转换、基本数据类型、运算符、流程控制语句等)
- 【黑马程序员】Java基础02:Java中的程序流程控制结构
- java基础学习笔记第二天——流程控制
- 黑马程序员——Java基础语法(二)—运算符、流程控制
- 黑马程序员_Java基础Day02(下)_程序流程控制(Done)
- 黑马程序员 JAVA初级-编程基础2 流程控制语句 函数 数组
- 黑马程序员_01_Java语言基础部分(数据类型与表达式、流程控制语句、数组与方法)
- 黑马程序员_java基础_语法基础&流程控制
- 黑马程序员——学习笔记03.java流程控制语句和函数
- 黑马程序员_java的语言基础组成进阶(对第三课程序流程控制的总结)
- 黑马程序员Java基础之流程控制(control)
- java 从零开始,学习笔记之基础入门<运算符表达式和流程控制>(六)
- 黑马程序员——java基础语法之控制流程语句
- 黑马程序员_java基础(2) 流程控制语句&函数与数组
- 黑马程序员--JAVA基础之流程控制语句
- JAVA基础知识学习笔记(流程控制、数组)
- 黑马程序员_java基础复习三流程控制
- 黑马程序员——Java基础(二) -- 流程控制语句和方法
- 学习笔记 Java_毕向东_语言基础_程序流程控制 2014.7.29