java基础知识之循环结构

写程序时,做数据测试,
正确数据
边界数据
错误数据

switch语句
switch(表达式){
case值1:
语句体1;
break:
case值2:
语句体2;
break:
.。。。
default
语句体n+1;
break;

}
解释:
byte ,short,int,char
jdk5后是可以枚举的,jdk7以后是字符串
case后面的值:是用来和表达式的值进行匹配的
break :中断
default:所有值都和表达式不匹配,就执行default对应的内容
执行流程
A计算表达式的值
B拿着这个值依次和case后面的值进行对比,一旦有匹配的,就执行对应的语句,在执行的过程中,遇到break就结束
c所有的case都不匹配就执行语句n+1.

  1. for循环语句格式: for(初始化语句;判断条件语句;控制条件语句) {
    循环体语句; }

            System.out.println("helloworld");
        } 在这里插入代码片 ```
        
    
  2. while循环语句格式

基本格式
while(判断条件语句) {
循环体语句;
}

扩展格式
初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}

  1. dowhile循环语句格式
    基本格式
    do {
    循环体语句;
    }while((判断条件语句);
    扩展格式
    初始化语句;
    do {
    循环体语句;
    控制条件语句;
    } while((判断条件语句);

4.区别:
do…while循环至少会执行一次循环体。
for循环和while循环只有在条件成立的时候才会去执行循环体
使用区别:控制条件语句中的变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

一个等号是赋值
两个等号是比较
这个+=是求和

System.out.println();换行

一些练习

输出五次helloworld
       for (int x = 1; x <= 5; x++) {
            System.out.println("helloworld");
        }


        for (int a = 1; a <= 5; a++) {
            System.out.println(a);
        }
        System.out.println("-------");


        for (int b = 5; b >= 1; b--) {
            System.out.println(b);
        }
        System.out.println("-------");

        int sum = 0;
        for (int c = 1; c <= 5; c++) {
            sum += c;

        }
        System.out.println("sum" + sum);


        for (int d = 1; d <= 100; d++) {
            if (d % 2 == 0)
                sum += d;
            System.out.println("sum:" + sum);
        }

        int count = 0;

        for (int e = 100; e < 1000; e++) {
            int ge = e % 10;
            int shi = e / 10 % 10;
            int bai = e / 10 / 10 % 10;
            if ((ge * ge * ge + shi * shi * shi + bai * bai * bai) == e) {
                System.out.println(e);
                count++;
            }
        }
                System.out.println("水仙花个数:"+count);
        }
         int f=1;
        while (f<=5){
            System.out.println("helloworld");
            f++;
        }

        int sum1 = 0;
        int g = 1;
        while (g<=100){
            sum1 +=g;
            g++;
        }
        System.out.println("sunm1:"+sum1);

打印三角形:
打印直角三角形

for(int x=1; x<=5; x++) {
			for(int y=1; y<=x; y++) {
				System.out.print("*");
			}
			System.out.println();
		}

在这里插入图片描述

打印正三角形

for (int hang = 1; hang <= 5; hang++) {
            
            for (int k = 1; k <= 5 - hang; k++) {
                System.out.print(" ");
            }


            for (int y = 1; y <= hang; y++) {
                System.out.print("*"+" ");
            }
                System.out.println();

            }

在这里插入图片描述

正的倒三角形:
不过我没有懂怎么来的
for (int hang = 1; hang <= 5; hang++) {

        for (int y = 0; y <= hang; y++) {
            System.out.print(" ");
        }
            for (int k = 1; k <= 5-2* (hang-1); k++) {

                System.out.print("*");
            }

            System.out.println();

        }

在这里插入图片描述

九九乘法表;
\t:转移字符,表示了一个table键的位置
思路:
先打印出一个9层的三角形
观察九九乘法表就是行和列相乘的乘积
就是x*y

if语句获取两数最大值

for (int ha =1;ha<=9;ha++){
            for (int li =1;li<=ha;li++){
                System.out.print(li+"*"+ha+"="+li*ha+"\t");

            }
            System.out.println();
        }
        System.out.println("----------");

在这里插入图片描述

package com.itheima_01;

import java.util.Scanner;

public class cd08 {
    //创建对象
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        System.out.println("输入第一个整数");
        int a = sc.nextInt();
        System.out.println("输入第二个整数");
        int b = sc.nextInt();
/*
        if (a > b) {
            System.out.println("较大的值:" + a);
        } else {
            System.out.println("较大的值:" + b);
        }

 */

       int max;

       if (a>b){
           max = a;
       }
       else {
           max = b;

       }
       //此处可以再进一步操作
       max +=10;
        System.out.println("较大值:"+max);
    }

}

swich語言的案例根據數字輸出對於的星期

package com.itheima_01;

import java.util.Scanner;

public class cd10 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("输出一个整数(1-7):");
        //接收
        int weekDay = sc.nextInt();

        //switch语句
        switch (weekDay){
            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("星期日");
                break;
            default:
                System.out.println("您輸出的數據有無");
                break;
        }

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值