第五章:循环

一.while循环

1.流程图

循环读取文件夹指定后缀文件 java java循环写入txt_重定向


2.注意

只有当循环中只包含一条语句或者不包含语句时,可以省略花括号。

在循环控制中,不要使用浮点值来比较是否相等,因为浮点值都是近似值。

3.经典案例

int i=1;
while(i<10)
    if((i++)%2==0)
        System.out.print(i+" ");//3 5 7 9

二.do-while循环

1.流程图

循环读取文件夹指定后缀文件 java java循环写入txt_while循环_02


其他两种都为前测循环,do-while为后测循环

三.for循环

1.流程图

循环读取文件夹指定后缀文件 java java循环写入txt_while循环_03


2.语法

for(初始操作;循环继续条件;每次迭代后的操作){
循环体;
语句组;
}
break:跳出当前循环
continue:跳出当前迭代
return:跳出当前方法

3.注意

for循环在初始操作中声明变量是一个好习惯

初始动作可以用逗号分开

for(int i=0,j=0;i+j<10;i++,j++){}

每次迭代后的操作可以用逗号分开

for(int i=0;i<10;System.out.println(i),i++)

在无限循环时

for(;true;){}

while(true){}

【补充 20220217】
for(;true;)和while(true)的区别
两个的执行结果和经过编译器优化过的字节码都是一样的,但是并不是所有的编译器都会优化,由于for(;;)不占用寄存器,所以指令也会少

四.输入输出重定向

1.当数据量大时,可以使用输入输出重定向

java 类名 < input.txt//向input.txt中读文件
java 类名 > output.txt//向output.txt中写文件
java 类名 < input.txt > output.txt//从input.txt中读,再写入output.txt文件中

2.具体案例

循环读取文件夹指定后缀文件 java java循环写入txt_循环读取文件夹指定后缀文件 java_04


使用输入重定向

循环读取文件夹指定后缀文件 java java循环写入txt_重定向_05


整数在txt文本中用空格隔开

循环读取文件夹指定后缀文件 java java循环写入txt_循环读取文件夹指定后缀文件 java_06


使用输出重定向

循环读取文件夹指定后缀文件 java java循环写入txt_for循环_07


循环读取文件夹指定后缀文件 java java循环写入txt_while循环_08

五.位操作符

操作符

描述

&

位与

|

位或

^

位与或

~

求反

<<

左移位

>>

右移位

>>>

不带符号的右移位

1.左移位

int y=10<<2;//00001010->00101000  结果为40

二进制向左边移动两位,并添加两个零

2.右移位

int y=10>>2;//00001010  ->  00000010   结果为2
int y=-10>>2;//结果为-3

正数向右移补0
负数向右移补1

3.无符号位右移位

int y=10>>>2;//结果为2

无论正负,都补0

五.总结

通过第五章的学习,我知道了三种循环,while循环,do-while循环和for循环,他们运用于不同的场景,大多数时候也可以相互转化,尽量少的使用continue和break以提高代码可读性。输入输出重定向很好的解决了数据量大的问题,移位运算在进行二进制计算时效率十分高。

加油!第六章待更……