我的账户
啄木鸟学院

专注软件测试菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

java-贺威栋-2021.03.08

[复制链接]
I5029学员认证 发表于 2021-3-8 20:17:48 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
package day02;
/*
循环:for、while、do-while循环
*/
public class Demo01 {
    public static void main(String[] args) {
        /*
            hello world打印5次
            1.int i = 0 初始化条件
            2.i < 5 循环条件
            3.i++ 迭代条件
            4.花括号里面是循环体
            5.1 --> 2 --> 4 --> 3 --> 2 -->4 -->3 -->2 -->...
         */
        for (int i = 0; i < 5; i++) {
            System.out.println("Hello World");
        }
        // i是局部变量,出了for循环就不生效了
        // 练习:遍历1~100之间的数字,将3的倍数打印出来,并统计个数
        int count = 0;
        for (int i = 1; i <= 100; i++) {
            if (i % 3 == 0) {
                System.out.println(i);
                count = count + 1;
            }
        }
        System.out.println("1~100之间的数字有" + count + "个数字是3的倍数");
        // ******* 每次打印1个*,一行7个
        // 共打印6行,j控制行,i控制列
        for (int j = 0; j < 6; j++) {
            for (int i = 0; i < 7; i++) {
                System.out.print("*"); // 不换行
            }
            System.out.println(); // 一行结束后换行
        }
        /*
            * *
            * **
            * ***
            * ****
            * *****
         */
        for (int j = 1; j <= 5; j++) {
            for (int i = 1; i <= j; i++) {
                System.out.print("*");
            }
            System.out.println();
        }
        /*
            * *****
            * ****
            * ***
            * **
            * *
         */
        for (int j = 1; j <= 5; j++) {
            for (int i = 5; i >= j; i--) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
/*
1. for循环:计算 7+77+777+…… 10项的值
2. for循环:计算序列的值:1,-2,3,-4,5,-6……-100
3. 打印九九乘法表(两层for循环)
*/
public class HomeWork02 {
    public static void main(String[] args) {
//        long s = 7;
//        long sum = 0;
//        for (int i = 1; i <= 10; i++) {
//            sum += (s * (Math.pow(10, i) - 1)) / (9);
//        }
//        System.out.println(sum);
        // 2.序列的值
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            if (i % 2 == 0) {
                sum -= i;
            } else {
                sum += i;
            }
        }
        System.out.println(sum);
//        // 3.九九乘法表
//        for (int i = 1; i <= 9; i++) {
//            for (int j = 1; j <= i; j++) {
//                System.out.print(j + "x" + i + "=" + i * j + "\t");
//            }
//            System.out.println();
//        }
    }
}
/*
while循环:循环次数固定时使用for循环,不固定时使用whiledo-while循环
*/
import java.util.Scanner;
public class Demo02 {
    public static void main(String[] args) {
        // 1~100累加的和
        int i = 0;  // 初始化条件
        int sum = 0;
        while (i <= 100) {  // 循环条件
            sum = sum + i;  // 循环体
            i++;  // 迭代条件
        }
        System.out.println("1~100累加的和=" + sum);
        /*
        练习:从键盘输入不确定个数的整数,统计正数、负数的个数,遇到0时退出
         */
        Scanner s = new Scanner(System.in);
        System.out.println("输入:");
        int a = s.nextInt();
        int zsCount = 0;
        int fsCount = 0;
        while (a != 0) {
            if (a > 0) {
                zsCount++;
            }
            if (a < 0) {
                fsCount++;
            }
            a = s.nextInt();
        }
        System.out.println("正数有" + zsCount + "个,"  + "负数有" + fsCount + "");
    }
}
/*
do-while:循环体至少执行一次
*/
public class Demo03 {
    public static void main(String[] args) {
        // 1~100累加
        int i = 0; // 初始化条件
        int sum = 0;
        do {
            sum = sum + i; // 循环体
            i++; // 迭代条件
        } while (i <= 100); // 循环条件
        System.out.println("1~100累加=" + sum);
        // whiledo-while区别
        int x = 10;
        while (x > 20) {  // 循环条件不满足时,循环体不执行
            System.out.println("while循环"); // 打印不了
        }
        int y = 10;
        do {
            System.out.println("do-while"); // 能打印
        } while (y > 20); // 循环条件不满足时,循环体执行一次
        // forwhile常用,do-while较少用
    }
}
package day02;
/*
break:跳出循环
continue:跳出本次循环
*/
public class Demo04 {
    public static void main(String[] args) {
        // 打印1~10的数字,遇到4的倍数就跳出循环。break
        for (int i = 1; i <= 10; i++) {
            if (i % 4 == 0) {
                break; // 123
            }
            System.out.print(i);
        }
        System.out.println();
        // 打印1~10的数字,遇到4的倍数不打印。continue
        for (int i = 1; i <= 10; i++) {
            if (i % 4 == 0) {
                continue; // 123567910
            }
            System.out.print(i);
        }
        System.out.println();

        System.out.println("--------------分割线-------------");

        abc: // 标签名,自定义的
        for (int j = 0; j < 3; j++) {
            for (int i = 1; i <= 10; i++) {
                if (i % 4 == 0) {
                    // break跳出包含此关键字的这一层的循环
                    // break abc; // 跳出标签所在的循环
                    continue abc; // 结束标签所在的循环
                }
                System.out.print(i);
            }
            System.out.println();
        }
    }
}
/*
数组:
    固定长度
    相同类型
    有序的
*/
import java.util.Arrays;
public class Demo05 {
    public static void main(String[] args) {
        // 声明一个数组并初始化(静态初始化:声明的同时赋值)
        int[] ids = {1001, 1002, 1003, 1004};
        System.out.println(ids[0]);
        System.out.println(ids[3]);
        // System.out.println(ids[4]); // 越界
        String[] names = {"aaa", "bbb", "ccc", "ddd"};
        System.out.println(names.length); // 长度
        // 数组的遍历,for循环,使用索引遍历
        for (int i = 0; i < names.length; i++) {
            System.out.println("hello," + names);
        }
        System.out.println("=================分割线===================");
        // foreach,每次取数组中的一个元素
        for (String name : names) {
            System.out.println("hello," + name);
        }
        // 获取数组中的最大值/最小值(打擂的方式)
        // 数组中第一个元素赋值给max(min)
        // 剩余的每个元素与max比较,若果比max大,则替换掉
        int[] nums = {10, 6, 10, 8, 100, 70, 60, 30};
        int max = nums[0];
        int min = nums[0];
        for (int i = 1; i < nums.length; i++) {
            if (nums > max) {
                max = nums;
            }
            if (nums < min) {
                min = nums;
            }
        }
        System.out.println("最大值为:" + max);
        System.out.println("最小值为:" + min);
        // ☆☆☆☆☆冒泡排序,nums数组从大到小排序
        for (int i = 0; i < nums.length; i++) { // 外层控制比较的趟数
            for (int j = 0; j < nums.length - i - 1; j++) { // 内层控制每趟比较的次数
                if (nums[j] < nums[j + 1]) {
                    int temp = nums[j];
                    nums[j] = nums[j + 1];
                    nums[j + 1] = temp;
                }
            }
        }

回复

使用道具 举报

关注0

粉丝0

帖子27

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注软件测试菁英教育

客服电话:17792550360

客服时间:9:00-21:00

卓目鸟学苑 - 专注软件测试菁英教育!( 陕ICP备2025058934号-2 )

版权所有 © 西安菁英教育科技有限公司 2023-2026