黑马程序员——高新技术---Java基础语法-循环结构和跳转语句

时间:2022-07-08 00:29:26

                          -----------android培训java培训、java学习型技术博客、期待与您交流!------------ 


:顺序结构(这个不多说) 

:选择结构

if语句的几种格式及其使用

if

if...else...

if...elseif...else if...else if....else(这个可以没有)

if语句要注意关系表达式后面没有分号,如果打上分号也不会报错,那就是控制的语句体是空的。这个如果有考题要注意。同时,if语句体内如果没有打大括号,那么下面只有一条语句是跟if配套。这个要注意。

switch语句

switch(表达式){

case1

         //代码

         beark

case2

         //代码

         beark

case3

         //代码

         beark

......

default:

        //代码

         break

}

这里switch语句要注意的地方是:

switch语句的表达式的值是byteshort int char,枚举,String类型。

case的值只能是“常量”,不能使变量。

casedefault之间没有顺序要求。但是程序执行还是先从case开始,最后才是default。但是如果defult在前面,没有break,那么下面的case还是会执行,知道遇到break结束。

switch语句通常是用于对多个常量值得精确判断。

switch.case语句中的default语句放在任何位置都无所谓,执行都是先casedefault,不过如果default后面没有跟break,后面的case还会在执行一遍,直到遇到break

Int n = 1

Switch(n){

default:

System.out.println("fsdfsdf")

case 1

System.out.println("sdfsdfs");

break;

case 2

System.out.println(dsads);

break;

}

//如果没有case值满足,会执行default,打印“fsdfsdf”,但是因为没有break,后面还是会继续执行,到“sdfsdfs”,然后break结束。

 

面试题一般都是考查的都是defaultbreak的东西,只要记住原理就行。

还有要注意的是case后面的值都是“常量”,不能是变量。case v1 不可以。case后面的值不能出现相同的。defaultbreak根据实际情况可以省略。default和其他case以及多个case之间也没有顺序关系。但是执行还是先casedefaultSwitch语句没有对boolean类型的判断只有byte,short,int,char,枚举,sting类型。

 

:while循环语句

while(逻辑表达式){

//循环体

}

do...while循环:

do{

//循环体

}while(逻辑表达式);(这里要注意要用分号结束,不要忘记了)

这两种循环的区别是do...while是先执行一次循环体,然后在判断,while是先判断,然后再判断是否执行循环体。


:for循环

for循环的表达式以及运行步骤不详细多说,主要存在的问题是在写代码时,初始化循环变量的时候容易忘记写变量类型,导致报错。

这个要注意。不能忘记初始化循环变量。

 

还有要注意的是for循环中变量的定义作用域范围,如果是在for循环中定义变量的话,只能在for循环中使用,出了for循环变量不可用。

 

:跳转语句breakcontinue

break是直接跳出循环。

continue是跳出本次循环。

带标签的breakcontinue

这个一般用在嵌套循环中,这里要定义一个标签,标签也属于自定义标识符,所以要遵守命名规则和命名规范。

标签格式如:loop

标签后面跟的直接是循环语句,不能是其他语句。

原理还是一样,breakloop是直接结束标签loop所在的循环,continueloop是结束标签loop所在的本次循环。

在嵌套循环中,breakloopcontinue loop只能结束期其所在循环以及父类循环,不能结束同级循环。