java中的循环

for-each循环

import java.util.ArrayList;

public class RunoobTest {
    public static void main(String[] args) {
        ArrayList<String> sites = new ArrayList<String>();
        sites.add("Google");
        sites.add("Runoob");
        sites.add("Taobao");
        sites.add("Weibo");
        for (String i : sites) {
            System.out.println(i);
        }
    }
}

Google
Runoob
Taobao
Weibo

在Java中,for (String i : sites) { ... } 是一个增强的 for 循环(也称为 "for-each" 循环),它用于遍历数组或实现了 Iterable 接口的集合(如 ArrayList)中的所有元素。

在这个特定的例子中,String i 是循环变量,它会在每次迭代中自动被赋值为 sites 集合中的下一个元素。sites 是你要遍历的 ArrayList 对象。

这里是如何工作的:

  1. 循环开始,i 被初始化为 sites 集合中的第一个元素。
  2. 执行循环体中的代码(在这个例子中是 System.out.println(i);)。
  3. 循环继续,i 被自动更新为 sites 集合中的下一个元素。
  4. 重复步骤2和3,直到 sites 集合中的所有元素都被处理过。

这种语法比传统的 for 循环更简洁,并且减少了出错的可能性,因为你不需要手动管理索引或迭代器的状态。不过,请注意,增强的 for 循环不提供对元素索引的直接访问,也不允许在循环过程中修改集合的结构(如添加或删除元素)。如果你需要这些功能,你可能需要使用传统的 for 循环或迭代器。

for循环

import java.util.ArrayList;

public class RunoobTest {
    public static void main(String[] args) {
        ArrayList<String> sites = new ArrayList<String>();
        sites.add("Google");
        sites.add("Runoob");
        sites.add("Taobao");
        sites.add("Weibo");
        for (int i = 0; i < sites.size(); i++) {
            System.out.println(sites.get(i));
        }
    }
}

Google
Runoob
Taobao
Weibo

使用了传统的for循环来遍历ArrayList<String>对象sites。这种循环方法允许你访问列表中的每个元素的索引,并可以使用该索引来获取相应的元素。

这里是代码各部分的解释:

  1. import java.util.ArrayList; - 导入ArrayList类,以便在代码中使用它。

  2. public class RunoobTest { ... } - 定义一个公共类RunoobTest

  3. public static void main(String[] args) { ... } - 定义程序的入口点,即main方法。main方法是一个特殊的静态方法,当Java虚拟机(JVM)加载包含main方法的类时,它会自动调用这个方法。String[] args是命令行参数的数组

  4. ArrayList<String> sites = new ArrayList<String>(); - 创建一个新的ArrayList对象sites,用于存储字符串(String)对象。

  5. sites.add("Google");, sites.add("Runoob");, 等 - 使用add方法向sites列表中添加字符串元素。

  6. 传统的for循环:

    • for (int i = 0; i < sites.size(); i++) { ... }
      • int i = 0; - 初始化一个整数变量i作为索引,它从0开始。
      • i < sites.size(); - 这是循环的条件。它检查i是否小于sites列表的大小(即列表中元素的数量)。
      • i++ - 在每次循环迭代结束时,将i的值增加1,以便在下次迭代中访问列表中的下一个元素。
  7. System.out.println(sites.get(i)); - 在循环体内部,使用get方法根据索引isites列表中获取字符串元素,并使用System.out.println打印它。

    for(int i : myNumbers)
    等价于:

    for(int i = 0; i < myNumbers.size(); i++){
    int j = myNumbers.get(i);
    }

相关推荐
是小崔啊12 分钟前
开源轮子 - EasyExcel02(深入实践)
java·开源·excel
mazo_command41 分钟前
【MATLAB课设五子棋教程】(附源码)
开发语言·matlab
myNameGL43 分钟前
linux安装idea
java·ide·intellij-idea
IT猿手1 小时前
多目标应用(一):多目标麋鹿优化算法(MOEHO)求解10个工程应用,提供完整MATLAB代码
开发语言·人工智能·算法·机器学习·matlab
青春男大1 小时前
java栈--数据结构
java·开发语言·数据结构·学习·eclipse
88号技师1 小时前
几款性能优秀的差分进化算法DE(SaDE、JADE,SHADE,LSHADE、LSHADE_SPACMA、LSHADE_EpSin)-附Matlab免费代码
开发语言·人工智能·算法·matlab·优化算法
Zer0_on1 小时前
数据结构栈和队列
c语言·开发语言·数据结构
一只小bit1 小时前
数据结构之栈,队列,树
c语言·开发语言·数据结构·c++
HaiFan.1 小时前
SpringBoot 事务
java·数据库·spring boot·sql·mysql
我要学编程(ಥ_ಥ)1 小时前
一文详解“二叉树中的深搜“在算法中的应用
java·数据结构·算法·leetcode·深度优先