[黑马程序员][java基础学习]04——Java基础语法(三)_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > [黑马程序员][java基础学习]04——Java基础语法(三)

[黑马程序员][java基础学习]04——Java基础语法(三)

 2015/4/23 4:04:07  不上课也要睡觉  程序员俱乐部  我要评论(0)
  • 摘要:------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!-------1:switch语句(掌握)(1)格式:switch(表达式){case值1:语句体1;break;case值2:语句体2;break;...default:语句体n+1;break;}格式解释说明:switch:说明这是switch语句。表达式:可以是byte,short,int,charJDK5以后可以是枚举JDK7以后可以是字符串case:后面的值就是要和表达式进行比较的值break
  • 标签:程序 程序员 学习 Java
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

1:switch语句(掌握)

?? ???? (1)格式:

?? ??? ??

class="java">  switch(表达式) {
                case 值1:
                    语句体1;
                    break;
                case 值2:
                    语句体2;
                    break;
                ...
                default:
                    语句体n+1;
                    break;
            }



?? ??? ??? ?
?? ??? ??? ?格式解释说明:
?? ??? ??? ??? ?switch:说明这是switch语句。
?? ??? ??? ??? ?表达式:可以是byte,short,int,char
?? ??? ??? ??? ??? ?JDK5以后可以是枚举
?? ??? ??? ??? ??? ?JDK7以后可以是字符串
?? ??? ??? ??? ?case:后面的值就是要和表达式进行比较的值
?? ??? ??? ??? ?break:表示程序到这里中断,跳出switch语句
?? ??? ??? ??? ?default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else

?? ??? ??? ?switch语句的表达式可以是byte,不可以是long,JDK7以后可以是String.

?

?? ??? ?(2)执行流程:

?? ??? ??? ?A:首先计算表达式的值
?? ??? ??? ?B:和每一个case进行匹配,如果有就执行对应的语句体,看到break就结束。
?? ??? ??? ?C:如果没有匹配,就执行default的语句体n+1。

?? ??? ?(3)注意事项:

?? ??? ??? ?A:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
?? ??? ??? ?B:default可以省略吗?
?? ??? ??? ??? ?可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
?? ??? ??? ??? ?特殊情况:
?? ??? ??? ??? ??? ?case就可以把值固定。
?? ??? ??? ??? ??? ?A,B,C,D
?? ??? ??? ?C:break可以省略吗?
?? ??? ??? ??? ?可以省略,但是结果可能不是我们想要的。
?? ??? ??? ??? ?会出现一个现象:case穿透。
?? ??? ??? ??? ?最终我们建议不要省略
?? ??? ??? ?D:default一定要在最后吗?
?? ??? ??? ??? ?不是,可以在任意位置。但是建议在最后。
?? ??? ??? ?E:switch语句的结束条件
?? ??? ??? ??? ?a:遇到break就结束了
?? ??? ??? ??? ?b:执行到末尾就结束了

?? ??? ?(4)if语句和switch语句各自的场景

?? ??? ??? ?A:if
?? ??? ??? ??? ?针对boolean类型的判断
?? ??? ??? ??? ?针对一个范围的判断
?? ??? ??? ??? ?针对几个常量的判断
?? ??? ??? ?B:switch
?? ??? ??? ??? ?针对几个常量的判断


2:循环语句(掌握)

?? ???? (1)分类:

?????????? for,while,do...while

?? ??? ?(2)for循环语句

?? ??? ???????? 格式

?? ??? ??? ??? ?for(初始化语句;判断条件语句;控制条件语句){
?? ??? ??? ??? ??? ?循环体语句;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?

?? ??? ??? ??? ?执行流程:

?? ??? ??? ??? ??? ?a:执行初始化语句
?? ??? ??? ??? ??? ?b:执行判断条件语句
?? ??? ??? ??? ??? ??? ?如果这里是true,就继续
?? ??? ??? ??? ??? ??? ?如果这里是false,循环就结束
?? ??? ??? ??? ??? ?c:执行循环体语句
?? ??? ??? ??? ??? ?d:执行控制条件语句
?? ??? ??? ??? ??? ?e:回到b

?? ??? ??? ?? 注意事项

?? ??? ??? ??? ?a:判断条件语句无论简单还是复杂,结果是boolean类型
?? ??? ??? ??? ?b:循环体语句如果是一条,可以省略大括号,但是不建议
?? ??? ??? ??? ?c:有分号就没有左大括号,有左大括号就没有分号

?? ??? ?(3)while循环

?? ??? ??? ?? 基本格式

?? ??? ??? ??? ?while(判断条件语句) {
?? ??? ??? ??? ??? ?循环体语句;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?

?? ??? ??? ?? 扩展格式:

?? ??? ??? ??? ?初始化语句;
?? ??? ??? ??? ?while(判断条件语句){
?? ??? ??? ??? ??? ?循环体语句;
?? ??? ??? ??? ??? ?控制条件语句;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?
?? ??? ??? ??? ?通过查看这个格式,我们就知道while循环可以和for循环等价转换。

?? ??? ??? ?? for和while的区别

?? ??? ??? ??? ?a:使用上的区别
?? ??? ??? ??? ??? ?for语句的那个控制条件变量,在循环结束后不能在使用了。
?? ??? ??? ??? ??? ?而while的可以继续使用。
?? ??? ??? ??? ?b:理解上的区别
?? ??? ??? ??? ??? ?for适合于一个范围的判断
?? ??? ??? ??? ??? ?while适合次数不明确的
?? ??? ??? ??? ??? ??? ?举例:吃葡萄

?? ??? ?(4)do...while循环

?? ??? ???? 基本格式

?? ??? ??? ??? ?do {
?? ??? ??? ??? ??? ?循环体语句;
?? ??? ??? ??? ?}while(判断条件语句);
?? ??? ??? ??? ?
?? ??? ??? ??? ?扩展格式:
?? ??? ??? ??? ?初始化语句;
?? ??? ??? ??? ?do {
?? ??? ??? ??? ??? ?循环体语句;
?? ??? ??? ??? ??? ?控制条件语句;
?? ??? ??? ??? ?}while(判断条件语句);
?? ??? ??? ??? ?
?? ??? ??? ??? ?通过查看格式,我们就可以看出其实三种循环的格式可以是统一的。

?? ??? ???? 三种循环的区别

?? ??? ??? ??? ?a:do...while循环至少执行一次循环体
?? ??? ??? ??? ?b:for和while必须先判断条件是否是true,然后后才能决定是否执行循环体

?? ??? ?(5)循环使用的注意事项(死循环)

?? ??? ??? ?A:一定要注意修改控制条件,否则容易出现死循环。
?? ??? ??? ?B:最简单的死循环格式
?? ??? ??? ??? ?a:while(true){...}
?? ??? ??? ??? ?
?? ??? ??? ??? ?b:for(;;){}
?? ??? ??? ??? ?


?

3:控制跳转语句(掌握)

??? break:

?? ???? A:用在循环和switch语句中,离开此应用场景无意义
?? ??? ?B:作用
?? ??? ??? ?a:跳出单层循环
?? ??? ??? ?b:跳出多层循环,需要标签语句的配合

???? continue:

?? ???? 用在循环中,离开此应用场景无意义。
?? ???? 作用
?? ??? ??? ?a:跳出单层循环的一次,可以继续下一次

??? return:

???????? 返回类型

?? ??? ?A:用于结束方法的,后面还会在继续讲解和使用。
?? ??? ?B:一旦遇到return,程序就不会在继续往后执行。



上一篇: java String之format 下一篇: 没有下一篇了!
发表评论
用户名: 匿名