1.4 Java控制语句

来源:互联网 发布:mac打开u盘隐藏文件 编辑:程序博客网 时间:2024/05/20 13:04

1.顺序结构:
2.判断结构:

if(条件表达式){    执行语句;}

执行语句是单条语句时,大括号可以省略。(for也一样)
一个if整体就相当于一个单条语句。单条语句一般以分号或者大括号结束。

if(条件表达式){    执行语句1;}else{    执行语句2;}

执行语句1,2只会而且肯定会执行一个。

三元运算符?:就是if else 语句的简写格式:
当if else 运算后,有一个具体的结果时,可以简写成三元运算符。如三元运算符不能直接执行输出语句。

if(条件表达式1){    执行语句1;}else if(条件表达式2){    执行语句2;}...else{    执行语句n;}

3.选择结构:

switch(表达式){case 取值1:    执行语句;    break;case 取值2:    执行语句;    break;...default:    执行语句;    break;}

能选择的数据只有4种:byte short int char等。

switch大括号里的内容会全部加载到内存,所以内容没有顺序,但是程序会先执行第一个case,然后依次读,最后读default。

靠近尾部大括号的break可以省略。
如果正确case的break省略掉了,那么后面的case里的执行语句会继续执行。可应用于单项多选择条件。
default里的break不代表程序结束,可以在开头或者中间,因为内容没有顺序。

开发的时候,ifswitch的使用场景:if1.对具体的值进行判断    2.对区间判断    3.对运算结果是boolean类型的表达式进行判断switch1.对具体的值进行判断(值的个数通常是固定的)    对于几个固定的值判断,建议使用switch语句,因为switch语句会将具体的答案都加载进内存,效率相对高一些。但是不常用,因为switch功能性差,书写麻烦。

4.循环结构:while, do while, for

1.

while(条件表达式){执行语句;}

ctrl + c 结束控制台的运行
注意控制两点:循环条件,循环次数。

2.

do{执行语句;} while(条件表达式);

开发用的较少

3.

for(初始化表达式;循环条件表达式;**循环后** 的操作表达式){    执行语句;}

多个表达式用逗号隔开。
循环条件必须是boolean值。

例子:

int x = 1;for(System.out.println("a"); x < 3; System.out.println("b")){    System.out.println("c");    x++;}     //acbcb
forwhile 的区别:1.forwhile可以互换。2.如果需要通过变量来对循环进行控制,该变量只作为循环增量存在时,小区别就出来了:for循环初始化的变量在循环结束后会消失,不能再次使用(节省内存空间)。如果循环变量还需要继续使用,优先使用while

无限循环应用:能有让循环适当的等待(不知道循环多少次,阻塞式方法),不定义变量控制次数。
while(true) { }
for( ;(不写默认就是true) ; ) { }

常用的:if while for循环结构使用场景:1.当对某些代码执行很多次时,使用循环结构完成。2.当对一个条件进行一次判断的时候,可以使用if语句。3.当对一个条件进行多次判断的时候,可以使用while语句。

注意:
1.在使用循环时,要明确哪些是需要参与循环的语句。
2.循环通常情况下,需要定义条件,和控制循环次数。

5.循环嵌套:

/*大圈套小圈思想:        一种重复的情况,这种重复情况中的每一次又对应另外一种情况多次。    */for(int i = 0; i < 4; i++) //外循环控制的是行数{    for(int j = 0; j < 4; j++) //内循环控制的是个数,只要保证区间域等于个数就行。    {        System.out.print("*");    }    System.out.println();}

6.转义符:

\n : 换行\t:制表符\b:退格\r:返回行首在Linux下的换行:\n\r  使光标移动到本行行首,\n  使光标移动到下一行行首在windows下的换行:\r\n\r\n    使光标移动到本行行首,然后移动到下一行行首 

7.其他流程控制语句:
break:跳出当先循环,用于选择结构(switch),循环结构
continue:结束本次循环,继续下次循环,用于循环结构

break,continue单独存在时,下面不要定义其他语句,会报错。

可以用if控制break何时跳出:if(x>1)    break

如果出现了循环嵌套,break/continue想要跳出或者继续指定的循环,可以通过标号来完成:

xiaoqiao: for(){    wangcai: for()    {        break xiaoqiao;        //continue wangcai:    }}