Java基础—流程控制—9循环结构while,dowhile,for(附:循环思想+IDEA使用技巧+练习题:99乘法表+打印三角形 )

2024-01-10 05:05:27
  • 循环的理解:

循环的出发点:编程是为了解决人的问题:如访问淘宝,网站全年无休地跑着

if执行一次

1、while循还:while(布尔表达式)

? ? 大部分情况:需要循环终止,让表达式失效,结束循环

? ? 小部分情况:需要循环一直执行,也就是死循环while(true):需要循环一直执行。如服务器的请求响应监听,等待客户端连接;如定时检查

2、dowhile循环:

? ? ?dowhile与while循环区别:

? ? ?while语句,如果不满足条件,不能进入循环

? ? ?先判断后执行

? ? ?dowhile语句:保证循环体至少被执行一次(至少执行一次)

? ? ?先执行后判断

3、for循环(for循环是支持迭代的一种通用结构,是最有效、最灵活的循环结构)

? ? ?1)结构: for(初始化;布尔表达式;迭代(更新)) {// 代码语句 }? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ?迭代如i++,让循环终止

? ? ?2)for循环的执行次数是在执行前就知道的

? ? ?3)IDEA快捷写法:100.for

? ? ? ? ? ?IDEA代码如何整体左移:shift + tab; 整体右移:tab?

? ? ? ? ? IDEA格式化代码:Ctrl + alt + L

? ? ?4)题目1注意点:

? ? ? ? ? ? ? ?(1)sout 是println, 也就是print line,输出完会换行print输出完不会换行(sout完之后,删掉ln即可)

public static void main(String[] args) {
    // 用while循环或者for循环输出1-1000之间能被5整除的数,每行输出3个
    int count = 0;
    for (int i = 1; i <= 1000; i++) {
        if (i % 5 == 0) {
            // println 是print line 输出完后会换行
            System.out.print(i+"\t");
            // 其实不用计数器
            // i % 15 == 0,sout即可
            count++;
            if (count == 3) {
                // 如果输出“\n”的话,两行之间会空一行
                // 所以输出空字符串
                // System.out.println("");
                System.out.println(); // 没有搞清楚这俩的区别
                count = 0;
            }
        }
    }
}

? ? ?4)题目2注意点:(输出99乘法表)

? ? ? ? ? ? ? ?(1)循环思想:做这道题目,明确变量i 是行,变量j 是列,就可避免把乘法表输反的情况。

public static void main(String[] args) {
    // j是列,i是行,变量定义要明确
    for (int j = 1; j <= 9; j++) {
        for (int i = 1; i <= j; i++) {
            System.out.print(i + "*" + j + "=" + (i * j) + "\t");
            if (j == i) {
                // 输出空格
                System.out.println();
            }
        }
    }
}

? ? ?4)题目3注意点:(输出三角形)重点题!!

? ? ? ? ? ? ? ?(1)循环思想:做这道题目,需要打印五行,变量i 是行, j是控制第几行到底输出几个

public static void main(String[] args) {
    // 把三角形进行拆分,比如打印5行
    for (int i = 1; i <= 5; i++) {
        for (int j = 5; j > i; j--) {
            System.out.print(" ");
        }
//            for (int j = 1; j <= 2 * i - 1; j++) {
//                System.out.print("*");
//            }
        for (int j = 1; j <= i; j++) {
            System.out.print("*");
        }
        for (int j = 1; j < i; j++) {
            System.out.print("*");
        }
        System.out.print("\n");
    }

4、增强for循环:后续在数组章节补充,主要是用来遍历数组和集合对象的,在jdk5引用的:

残余疑问点,待后续补充

没明白System.out.println("") 和 System.out.println()的区别

文章来源:https://blog.csdn.net/weixin_38735218/article/details/135313250
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。