循环结构

while循环

  • 只要布尔表达式为true。循环就会一直执行下去

  • 一个表达式失效的方式结束循环

  • 少部分情况下需要循环一直执行,比如服务器的请求相应监听等

  • 循环条件一直为true就会造成无限循环【死循环】,要避免死循环,会影响程序卡死
    `

    package com.sjy.struct;

    public class WhileDemo01 {
    public static void main(String[] args) {

    //输出1-100
    int i=0;
    while (i<100){
    i++;
    System.out.println(i);
    }
    }
    }

`

  • 死循环
    `

    package com.sjy.struct;

    public class WhileDemo02 {
    public static void main(String[] args) {
    //死循环
    while (true){
    //等待客户端链接
    //定时检查

    }
    }
    }

`

`

package com.sjy.struct;

public class WhileDemo03 {
public static void main(String[] args) {
//计算1+2+3+...+100=?

//
int i=0;
int sum=0;
while (i<=100){
sum=sum+i;
i++;
}
System.out.println(sum);
}
}

`//输出5050

do...while循环

  • while和do...while不同的是do...while至少会执行一次
  • while和do...while的区别
    • while先判断都执行。do...while先执行后判断
    • do...while至少会执行一次

`

package com.sjy.struct;

public class DoWhileDemo01 {
public static void main(String[] args) {
//计算1+2+3+...+100=?

//
int i=0;
int sum=0;
do {
sum=sum+i;
i++;
}while (i<=100);

System.out.println(sum);
}
}
//输出5050

`

`

package com.sjy.struct;
//while和dowhile的区别
public class DoWhileDemo02 {
public static void main(String[] args) {
int a=0;
while (a<0){
System.out.println(a);
a++;
}
System.out.println("=================================");
//至少执行一次
do {
System.out.println(a);
a++;
}while (a<0);
}
}

`

For循环

  • for循环语句是支持迭代的一种通用结构,最有效的 最灵活循环结构

`

for(初始化;布尔表达式;更新){
//代码语句
}

`

`

package com.sjy.struct;

public class ForDemo01 {
public static void main(String[] args) {

int a=1;//初始化条件
while (a<=100){//条件判断
System.out.println(a);//循环体
a+=2;//迭代
}
System.out.println("whlie循环结束");

//死循环
for(; ; ){
}

}
}

`


`

public static void main(String[] args) {

//0-100之间的技术和偶数和

int oddSum=0;
int evenEum=0;

for (int i = 0; i < 100; i++) {
if (i%2!=0){
oddSum=+i;
}else{
evenEum+=i;
}
}
System.out.println("奇数和"+oddSum);
System.out.println("偶数和"+evenEum);
}

`

`

public static void main(String[] args) {
//1-1000被5整除的数,每行输出三个

for (int i = 0; i <= 1000; i++) {
if (i%50){
System.out.print(i+"\t");
}
if (i%(5*3)
0){
System.out.print("\n");
}
}
//println 输出完会换行
//print 输出完不会换行
}

`

`

public static void main(String[] args) {
//打印第一列
//把固定的1在用一个循环抱起来
//去掉重复 i<=j
//调整样式
for (int j =1; j <= 9; j++) {
for (int i = 1; i <= j; i++) {
System.out.print(j+""+i+"="+(ji)+"\t");
}
System.out.println();
}

}

`

增强for循环

  • 语句:

`

for(声明语句:表达式)
{
//代码句子
}

`

  • 声明语句:声明新的局部变量,该变量的类型必须和数组元素匹配。其作用域限定在循环语句快,其值与此时数组元素的值相等
  • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法

`

public static void main(String[] args) {
int[] numbers = {10, 56,41};//定义了一个数组

for (int i = 0; i < 3; i++) {
System.out.println(numbers[i]);
}

//遍历数组的元素
for (int x:numbers){//numbers赋值给x
System.out.println(x);
}
}

`

posted @ 2021-05-21 01:16  mr42  阅读(75)  评论(0)    收藏  举报