while循环

    1. 格式:
    2.  
    3. while(条件表达式) { // 条件表达式其实就是一个结果为boolean类型的代码
    4. 循环体;
    5. }
    • 执行流程: 先判断条件表达式的值, 如果为true就执行循环体,执行完循环体后会再次判断条件表达式的值,直到条件表达式的值为false, while循环结束

do-while循环

  • 格式:
  1. do{
  2. 循环体;
  3. }while(条件表达式);
  • 执行流程: 先执行一次循环体, 再判断条件表达式的值,如果为true就再执行循环体,直到条件表达式的值为false, do-while循环结束

for循环

格式:

  1. for(开始条件①;判断条件②;循环的变化方式③) {
  2. 循环体④;
  3. }
  4. 执行流程: 先执行开始条件, 然后执行判断条件, 如果为true就走循环体, 循环体执行结束后,走循环的变化方式, 再执行判断条件, 如果为true再走循环体, 直到判断条件的结果为false,那么循环结束.
    注意:如果第一次执行判断条件结果为false那么循环直接结束,不会执行循环体
    • ① -> ② -> ④ -> ③ -> ② -> ④ -> ③ -> ② -> ④ -> ③ (直到②为false循环结束)

    注意:如果知道循环次数,使用for循环,如果不明确循环次数使用while循环

  5. // 打印1 ~ n 之间的所有整数

    // 打印1 ~ n 之间所有整数的和

    // 打印1 ~ n 之间所有奇数的和
  6. public class Print {
    
        /**
         * 此方法用于打印1 ~ n 之间的所有整数
         *
         * @param n
         */
        public void print1_n(int n) {
            for(int i = 1; i <= n; i++) {
                System.out.println(i);
            }
        }
    
        /**
         * 打印1 ~ n 之间所有整数的和
         * @param n
         */
        public void printSum1_n(int n) {
            // 定义一个和   求和思想
            int sum = 0;
    
            for(int i = 1; i <= n; i++) {
                sum += i; // sum = sum + i;
            }
    
            System.out.println(sum);
        }
    
        /**
         * 打印1 ~ n 之间所有奇数的和
         * @param n
         */
        public void printJiSum(int n) {
            int sum = 0;
    
            // 获取1 ~ n 之间的每一个数
            for(int i = 1; i <= n; i++) {
                // 判断,如果是奇数就相加,偶数不管了~
                if(i % 2 == 1) {
                    sum += i;
                }
            }
    
            System.out.println(sum);
    
        }
    }

    增强for循环

  • 遍历的含义: 获取容器中的每一个元素

  • 格式:

 
  1. for(要遍历的容器中元素的数据类型 变量名 : 要遍历的容器) {
  2. 使用变量;
  3. }
  • 作用: 遍历容器(数组或者单列集合)
  • 快捷键: 在要遍历的容器的下方输入fore 按 alt + / 回车

死循环

 
  1. for(;;) {
  2. }
  3. // while循环的死循环
  4. while(true) {
  5. }
 

break和continue

  • break: 跳出(结束)循环
  • continue: 结束本次循环,进行下一次循环

for循环嵌套

数组,ArrayList,HashMap和字符串的遍历

  遍历数组

public class Test1_遍历数组 {
    public static void main(String[] args) {
        int[] arr = { 1, 2, 3, 4, 5 };

        // 普通for循环
        for(int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

        // 增强for循环
        for (int i : arr) {
            System.out.println(i);
        }
    }
}

遍历ArrayList集合

public class Test2_遍历单列集合 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("张三");
        list.add("李四");
        list.add("王五");
        list.add("赵六");

        // 普通for循环
        for(int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        // 增强for循环
        for (String string : list) {
            System.out.println(string);
        }

    }
}

遍历Map集合

public class Test3_遍历双列集合 {
    public static void main(String[] args) {
        HashMap<String, Integer> map = new HashMap<>();
        map.put("张三", 23);
        map.put("李四", 24);
        map.put("赵六", 26);
        map.put("周琦", 27);

        // keySet(): 获取到双列集合中所有键的集合
        for(String key : map.keySet()) {
            System.out.println(key + "=" + map.get(key));
        }

    }
}

遍历字符串

public class Test4_遍历字符串 {
    public static void main(String[] args) {
        String s = "abcdefg";

        // charAt(index): 获取指定角标位置的字符
        for(int i = 0; i < s.length(); i++) {
            System.out.println(s.charAt(i) + "");
        }

        // toCharArray() : 将字符串转换成字符数组
        char[] chs = s.toCharArray();
        for (char c : chs) {
            System.out.println(c + "");
        }
    }
}

break 关键字

结束当前循环

continue关键字

跳过本次循环,执行下一次循环

continue 在循环中其促进作用

java基础->循环的更多相关文章

  1. [Java基础]循环结构3

    [Java基础]循环结构3 break 与 continue 中断循环... /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:BreakTest.java 编写时间:2016/6 ...

  2. [java基础]循环结构2

    [java基础]循环结构2 写了几个循环结构练习~记录一下~~ 1:99乘法表 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:GameForFor.java 编写时间:2016 ...

  3. [java基础]循环结构1

    [java基础]循环结构1 循环结构:for循环,while循环,do_while循环在,增强型for循环 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:WhileTest.j ...

  4. 《Java基础——循环语句》

    Java基础--循环语句       1. while语句: 规则: 1. 首先计算表达式的值. 2. 若表达式为真,则执行循环语法,直至表达式为假,循环结束.   格式: while(表达式) 语句 ...

  5. java基础 ----- 循环结构

    循环的结构特点 :    循环条件   循环操作 -----     while 循环 来个小例子,实现打印50 份shij 1.确定循环条件和循环操作 2.套用while语法写出代码 3.检查循环能 ...

  6. java基础循环

    一. while循环 示例1:.循环打印1到10之间的值 public class Test1 { public static void main(String[] args) { int i=1;/ ...

  7. Java基础循环结构

    int x=10; do { System.out.println("value of x:"+x); x++; } while(x<20); //do while循环 1 ...

  8. java基础-循环标签

    outer: for innter: for break outer//跳出整个循环: continue outer//结束本次外循环的循环 break inner; continute inner; ...

  9. java基础——循环结构

    循环结构 while 循环 只要表达式成立,循环就一直持续 我们大多数情况会让循环停下来,我们需要一个让表达式失效的方式,来结束循环    public static void main(String ...

随机推荐

  1. c专家编程摘录

    C专家编程摘录 c操作符的优先级 有时一些c操作符有时并不会像你想象的那样工作. 下方表格将说明这个问题: 优先级问题 表达式 期望的情况 实际情况 . 优先级高于* *p.f (*p).f *(p. ...

  2. CCF-201503-3-节日

    问题描述 试题编号: 201503-3 试题名称: 节日 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 有一类节日的日期并不是固定的,而是以"a月的第b个星期c&q ...

  3. java变量和作用域以及成员变量的默认初始化

    Java中的变量有成员变量和局部变量,定义在类中方法之外的变量成为成员变量或者成员字段(域),表示一个类所具有的属性,定义为类的成员变量的变量的作用于是整个类,该变量在定义的时候不需要初始化,在使用前 ...

  4. Redis的五种数据类型及方法

    字符串string: 字符串类型是Redis中最为基础的数据存储类型,是一个由字节组成的序列,他在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据货Json对象描 ...

  5. 并发与并行的区别 The differences between Concurrency and Parallel

    逻辑控制流 在程序加载到内存并执行的时候(进程),操作系统会通过让它和其他进程分时段占用CPU(CPU slices)让它产生自己独占CPU的假象(同时通过虚拟内存让它产生独占内存的假象).在CPU在 ...

  6. MySQL 索引管理与执行计划

    1.1 索引的介绍 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息.如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息. ...

  7. JavaScript 定义类的最佳写法——完整支持面向对象(封装、继承、多态),兼容所有浏览器,支持用JSDuck生成文档

    作者: zyl910 [TOC] 一.缘由 由于在ES6之前,JavaScript中没有定义类(class)语法.导致大家用各种五花八门的办法来定义类,代码风格不统一.而且对于模拟面向对象的三大支柱& ...

  8. Winform开发框架中工作流模块之申请单草稿处理

    在我们开发工作流模块的时候,有时候填写申请单过程中,暂时不想提交审批,那么可以暂存为草稿,以供下次继续填写或者提交处理,那么这个草稿的功能是比较实用的,否则对于一些填写内容比较多的申请单,每次要重填写 ...

  9. 三、Spring Boot 多数据源配置

    下面一个Java类是已经写好的根据配置文件动态创建多dataSource的代码,其原理也很简单,就是读取配置文件,根据配置文件中配置的数据源数量,动态创建dataSource并注册到Spring中. ...

  10. SpringBoot ( 七 ) :springboot + mybatis 多数据源最简解决方案

    说起多数据源,一般都来解决那些问题呢,主从模式或者业务比较复杂需要连接不同的分库来支持业务.我们项目是后者的模式,网上找了很多,大都是根据jpa来做多数据源解决方案,要不就是老的spring多数据源解 ...