循环结构:
在程序中总有一些反复重复的执行的代码,假设没有循环结构,那么这段需要重复执行的代码自然是需要反复编写的,代码无法得到重复使用,所以多数编程语言都是支持循环结构的,将来八需要反复执行的代码片段放到“循环体”,在联合计数器,共同控制这段反复执行的代码。
基本上所有的编程语言支持三种循环:
for循环
while循环
do while循环
1.for循环
for(初始化表达式;布尔表达式;更新表达式){
//反复执行的代码片段
}
*for循环执行原理:
1.初始化表达式,布尔表达式,更新表达式都不是必须的!【但是两个分号是必须的】
2.初始化表达式最先执行,并且在整个for循环当中只执行一次。
3.for的执行过程:
先执行出书画表达式,并且该表达式只执行一次。
判断布尔表达式的结果是true还是false
*布尔表达式true:
执行循环体
更新表达式
执行更新表达式
*布尔表达式false:
循环结束。
public class ForTest
{
public static void main(String[] args){
//输出数据1-10:
for(int i=1;i<=10;i++){
System.out.println(i);
}
}
}
死循环应用:
public class SwitchTest
{
public static void main(String[] args){
for (; ; )
{
java.util.Scanner s=new java.util.Scanner(System.in);
System.out.println("请输入数字:");
int num = s.nextInt();
switch(num){
case 1:
System.out.println("今天是小明值班");
break;
case 2:
System.out.println("今天是小红值班");
break;
case 3:
System.out.println("今天是老八值班");
break;
case 4:
System.out.println("今天是新型值班");
break;
case 5:
System.out.println("今天是奥里给值班");
break;
case 6:
System.out.println("今天是钟离值班");
break;
case 7:
System.out.println("今天是gay值班");
break;
default:
System.out.println("对不起,请重新输入");
}
}
}
}
public class ForTest
{
public static void main(String[] args){
//输出数据1-10:
for(int i=1;i<=10;i++){
System.out.println(i);
}
for(int j=0;j<10;j++){
System.out.println("j---->"+j);
}
System.out.println("j的最终结果为:"+j);
}
//这个i变量必须在main方法里面访问
}
编译报错:在for里面定义变量结果j变量会被释放,找不到符号。
改:
public class ForTest
{
public static void main(String[] args){
//输出数据1-10:
for(int i=1;i<=10;i++){
System.out.println(i);
}
int j=0;
for(j=0;j<10;j++){
System.out.println("j---->"+j);
}
System.out.println("j的最终结果为:"+j);
}
//这个i变量必须在main方法里面访问
}
public class ForTest01
{
public static void main(String[] args){
//输出1到10的奇数
for(int i=1;i<=10;i+=2){
System.out.println("i--->"+i);//1 3 5
}
//输出1到10的偶数
for(int j=2;j<=10;j+=2){
System.out.println("j--->"+j);//2 4 6
}
for(int i=0;i<=10;){
System.out.println("i--->"+i);
i++;
}
for(int i=0;i<=10;){
i++;
System.out.println("i--->"+i);
}
}
}
尽量想象多种执行结果,完成它梦们的执行顺序。
public class ForTest02
{
public static void main(String[] args){
//找出所有1-100的奇数:
for(int i=1;i<=100;i+=2){
System.out.println("奇数:"+i);
}
for(int i=1;i<=100;){
if(i%2==0){
System.out.println("偶数:"+i);
}
i++;
}
}
}
累加:
符号:+=
先定义一个累加器:sum
累加求和
public class ForTest02
{
public static void main(String[] args){
//找出所有1-100的奇数:
for(int i=1;i<=100;i+=2){
System.out.println("奇数:"+i);
}
for(int i=1;i<=100;){
if(i%2==0){
System.out.println("偶数:"+i);
}
i++;
}
for(int i=1;i<=100;i+=2){
int sum=0;
sum+=i;
}
System.out.println(sum);
}
}
结果累加为0,注意sum的位置。