Java语法基础之语句
2013-07-15 16:19
211 查看
程序流程控制语句
分四类:
a) 判断结构(if)
b) 选择结构(switch)
c) 循环结构(do while;while;for)
d) 其他流程控制语句(break;continue)
一、判断结构(if)
1、if语句三种格式:
1, if(条件表达式) 3, if(条件表达式)
{ {
执行语句; 执行语句;
} }
2, if(条件表达式) else if (条件表达式)
{ {
执行语句; 执行语句;
} }
else ……
{ else
执行语句; {
} 执行语句;
}
2、If语句特点:
a) 每一种格式都是单条语句。
b) 第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。
c) 条件表达式无论写成什么样子,只看最终的结构是否是true或者false。
3、注意事项:
1) 第三种格式中只要有一个满足条件的就结束。
2) if到第一个分号“;”为止。
3) ifelse 结构 简写格式:变量=(条件表达式)?表达式1:表达式2;相当于三元运算符。
4) 三元运算符:好处:可以简化if else 代码。弊端:因为是一个运算符,所以运算完必须要有一个结果。
4、练习:
1,需求1:根据用户定义的数值不同。打印对应的星期英文。
2,需求2:根据用于指定月份,打印该月份所属的季节。
二、选择结构
1、switch语句格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
……
default:
执行语句;
break;
}
2、switch语句特点:
工作原理:用switch后小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了,就执行哪个case后面的语句,如果没有相同的则执行default后面的语句。
细节:1):break是可以省略的,如果省略了就一直执行到遇到break为止;
2):switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种;
3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现。
4):结束switch语句的两种情况:遇到break,执行到switch语句结束。
3、练习
需求2:根据用于指定月份,打印该月份所属的季节。
注意事项:
if与switch语句。
具体什么场景下,应用哪个语句呢?
如果判断的具体数值不多,而是符合byte short int char这四种类型。
虽然两个语句都可以使用,建议使用swtich语句。因为效率稍高。
其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。
三、循环结构
代表语句:while,do while, for
1,while语句格式:
while(条件表达式) do while语句格式:
{ do
执行语句; {
} 执行语句;
}while(条件表达式);
while:先判断条件,只有条件满足才执行循环体。
do while: 先执行循环体,在判断条件,条件满足,再继续执行循环体。
简单一句话:do while:无论条件是否满足,循环体至少执行一次。
2,while与do while 举例:
3,for语句格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
4,while与for注意事项:
注:
a) for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止,
b) while 与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放,而while循环使用的变量在循环结束后还可以继续使用。
c) 最简单无限循环格式:while(true),for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。
for和while的示例:
通过示例的总结如下:
1,变量有自己的作用域。对于for来讲:如果将用于控制循环的增量定义在for语句中。那么该变量只在for语句内有效。
for语句执行完毕。该变量在内存中被释放。
2,for和while可以进行互换。如果需要定义循环增量。用for更为合适。
3,什么时候使用循环结构?
当要对某些语句执行很多次时,就使用循环结构。
for执行时小小注意点:
a) 条件既不是真也不是假,编译失败。
b) 无限循环的最简单表现形式:
for(;;){}
while(true){}
小小总结:
ifswitch do while while for
这些语句什么时候用?
1)、当判断固定个数的值的时候,可以使用if,也可以使用switch。但是建议使用switch,效率相对较高。
2)、当判断数据范围,获取判断运算结果boolean类型时,需要使用if。
3)、当某些语句需要执行很多次时,就用循环结构。
四、其他流程控制语句
break(跳出),continue(继续)
break语句:应用范围:选择结构和循环结构。
break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue语句:应用于循环语句。
continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
注:
a) 这两个语句离开应用范围,存在是没有意义的。
b) 这两个语句单独存在下面都不可以有语句,因为执行不到。
c) continue语句是结束本次循环继续下次循环。
d) 标号的出现,可以让这两个语句作用于指定的范围。
寄语:学习语句时,才发现数学是如此的重要,虽然我没有时间再回到学校学习数学了,加油吧!。。。 ——濛濛
分四类:
a) 判断结构(if)
b) 选择结构(switch)
c) 循环结构(do while;while;for)
d) 其他流程控制语句(break;continue)
一、判断结构(if)
1、if语句三种格式:
1, if(条件表达式) 3, if(条件表达式)
{ {
执行语句; 执行语句;
} }
2, if(条件表达式) else if (条件表达式)
{ {
执行语句; 执行语句;
} }
else ……
{ else
执行语句; {
} 执行语句;
}
2、If语句特点:
a) 每一种格式都是单条语句。
b) 第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。
c) 条件表达式无论写成什么样子,只看最终的结构是否是true或者false。
3、注意事项:
1) 第三种格式中只要有一个满足条件的就结束。
2) if到第一个分号“;”为止。
3) ifelse 结构 简写格式:变量=(条件表达式)?表达式1:表达式2;相当于三元运算符。
4) 三元运算符:好处:可以简化if else 代码。弊端:因为是一个运算符,所以运算完必须要有一个结果。
4、练习:
1,需求1:根据用户定义的数值不同。打印对应的星期英文。
class IfTest { public static void main(String[] args) { //需求1:根据用户定义的数值不同。打印对应的星期英文。 int num = 1; if(num==1) System.out.println("monday"); else if(num==2) System.out.println("tsd"); else System.out.println("nono"); } }
2,需求2:根据用于指定月份,打印该月份所属的季节。
class IfTest { public static void main(String[] args) { //需求2:根据用于指定月份,打印该月份所属的季节。 //3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季 int x = 4; if(x==3 || x==4 || x==5) System.out.println(x+"春季"); else if(x==6 || x==7 || x==8) System.out.println(x+"夏季"); else if(x==9 || x==10 || x==11) System.out.println(x+"秋季"); else if(x==12 || x==1 || x==2) System.out.println(x+"冬季"); else System.out.println(x+"月份不存在"); if(x>12 || x<1) System.out.println(x+"月份不存在"); else if(x>=3 && x<=5) System.out.println(x+"春季"); else if(x>=6 && x<=8) System.out.println(x+"夏季"); else if(x>=9 && x<=11) System.out.println(x+"秋季"); else System.out.println(x+"冬季"); } }
二、选择结构
1、switch语句格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
……
default:
执行语句;
break;
}
2、switch语句特点:
工作原理:用switch后小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了,就执行哪个case后面的语句,如果没有相同的则执行default后面的语句。
细节:1):break是可以省略的,如果省略了就一直执行到遇到break为止;
2):switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种;
3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现。
4):结束switch语句的两种情况:遇到break,执行到switch语句结束。
3、练习
需求2:根据用于指定月份,打印该月份所属的季节。
class SwitchTest { public static void main(String[] args) { //需求2:根据用于指定月份,打印该月份所属的季节。 //3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季 int x = 4; switch(x) { case 3: case 4: case 5: System.out.println(x+"春季"); break; case 6: case 7: case 8: System.out.println(x+"夏季"); break; case 9: case 10: case 11: System.out.println(x+"秋季"); break; case 12: case 1: case 2: System.out.println(x+"冬季"); break; default: System.out.println("nono"); } System.out.println("Hello World!"); } }
注意事项:
if与switch语句。
具体什么场景下,应用哪个语句呢?
如果判断的具体数值不多,而是符合byte short int char这四种类型。
虽然两个语句都可以使用,建议使用swtich语句。因为效率稍高。
其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。
三、循环结构
代表语句:while,do while, for
1,while语句格式:
while(条件表达式) do while语句格式:
{ do
执行语句; {
} 执行语句;
}while(条件表达式);
while:先判断条件,只有条件满足才执行循环体。
do while: 先执行循环体,在判断条件,条件满足,再继续执行循环体。
简单一句话:do while:无论条件是否满足,循环体至少执行一次。
2,while与do while 举例:
class WhileDemo { public static void main(String[] args) { /*定义初始化表达式; while(条件表达式) { 循环体(执行语句); } */ int x = 1; while(x<3) { System.out.println("x="+x); x++; } int x1 = 1; do { System.out.println("do : x1="+x1); x1++; } while (x<3); int y = 1; while(y<3) { System.out.println("y="+y); y++; } } }
3,for语句格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
4,while与for注意事项:
注:
a) for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止,
b) while 与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放,而while循环使用的变量在循环结束后还可以继续使用。
c) 最简单无限循环格式:while(true),for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。
for和while的示例:
class ForDemo { public static void main(String[] args) { /* for(初始化表达式;循环条件表达式;循环后的操作表达式) { 执行语句; } */ for(int x = 0; x<3 ; x++) { System.out.println("x="+x); } //System.out.println("x===="+x); int y=0; while(y<3) { System.out.println("y="+y); y++; } System.out.println("y===="+y); } }
通过示例的总结如下:
1,变量有自己的作用域。对于for来讲:如果将用于控制循环的增量定义在for语句中。那么该变量只在for语句内有效。
for语句执行完毕。该变量在内存中被释放。
2,for和while可以进行互换。如果需要定义循环增量。用for更为合适。
3,什么时候使用循环结构?
当要对某些语句执行很多次时,就使用循环结构。
for执行时小小注意点:
a) 条件既不是真也不是假,编译失败。
class ForTest { public static void main(String[] args) { for(System.out.println("a"); System.out.println("b");System.out.println("c"),x++) { System.out.println("d"); //编译失败,条件既不是真也不是假,编译失败。 } int x = 1; for(System.out.println("a"); x<3 ;System.out.println("c"),x++) { System.out.println("d"); x++; } //结果为adcdc } }
b) 无限循环的最简单表现形式:
for(;;){}
while(true){}
小小总结:
ifswitch do while while for
这些语句什么时候用?
1)、当判断固定个数的值的时候,可以使用if,也可以使用switch。但是建议使用switch,效率相对较高。
2)、当判断数据范围,获取判断运算结果boolean类型时,需要使用if。
3)、当某些语句需要执行很多次时,就用循环结构。
四、其他流程控制语句
break(跳出),continue(继续)
break语句:应用范围:选择结构和循环结构。
break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue语句:应用于循环语句。
continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
注:
a) 这两个语句离开应用范围,存在是没有意义的。
b) 这两个语句单独存在下面都不可以有语句,因为执行不到。
c) continue语句是结束本次循环继续下次循环。
d) 标号的出现,可以让这两个语句作用于指定的范围。
寄语:学习语句时,才发现数学是如此的重要,虽然我没有时间再回到学校学习数学了,加油吧!。。。 ——濛濛
相关文章推荐
- Java基础语法(二)----运算符和流程控制语句 (之 流控制语句)
- java基础--------java语法基础之语句
- JAVA 基础语法(三)——三目(条件)运算符以及分支语句
- JAVA基础:Java编程中if语句语法
- 2.1Java基础语法(运算符、键盘录入、流程控制语句)
- Java基础语法(基本语句)
- JavaScript基础(基本语法:变量、语句、数组、函数、对象、全局方法以及js与java不同,js与html关联)
- 3. Java 语法基础 类型 条件语句 数组
- day01--Java基础语法-Java分支语句
- JavaSE基础第二部分:Java基础语法之流程控制语句
- Java语法基础之循环结构语句详解
- 黑马程序员—————Java基础语法(2)----语句、函数和数组
- 黑马程序员——java基础语法-判断语句、函数、数组
- 3 Java基础语法(运算符,键盘录入,流程控制语句,if语句)
- 黑马程序员-java编程基础,基本数据类型,基本语法及基本语句
- Java基础语法(一)---数据、数值类型、运算符、程序流程控制语句和循环结构
- day1-Java基础语法--Java循环语句
- Java语法基础(四)----循环结构语句
- Java语法基础之选择结构的if语句、switch语句详解
- 黑马程序员——java第三天:基础语法(三元运算符,while、switch、for语句)