当前位置: 首页 > news >正文

集合的三种遍历方式

迭代器(Iterator)

  • 概述:Iterator 是个接口,迭代器是集合的专用遍历方式

  • 使用方法,我们想要使用迭代器,必须首先得到集合对象,通过集合对象生成迭代器对象,才能进行集合的遍历

  • 常用方法:

    方法作用
    Iterator iterator()返回集合迭代器对象
    E next()返回迭代中的下一个元素
    boolean hasNext()判断集合中有无元素,有返回 true,无返回 false
  • 遍历模板

    // 1、创建集合对象,添加元素就不写了
    ArrayList<String> alist = new ArrayList<String>();
    // 2、创建迭代器对象
    Iterator it = alist.iterator();
    // 3、通过迭代器遍历
    while(it.hasNext()){String s = it.next();
    }
    

增强 for 循环

  • foreach概述:底层实际用的是迭代器实现(jdk5之后出现),但是大大简化了代码的编写

  • 好处:简化数组和 Collection 集合的遍历,实现 Iterator 接口的类允许其对象成为增强 for 语句的目标

  • 格式:

    for(元素数据类型  变量名 : 数组或者集合(单列)){//此处直接使用变量即可,该变量就是元素
    }
    
  • 遍历模板

    // 1、创建集合对象
    ArrayList<String> alist = new ArrayList<String>();
    // 2、foreach 遍历集合
    for(String s : alist){// s 就是代表遍历过程中 的单个集合对象
    }
    

普通 for 循环

  • 概述:操作的时候如果需要用到索引,使用普通 for 循环

  • 常用方法:

    方法作用
    int size();返回集合中元素个数
    E get(int index);返回指定 索引位置 元素对象
  • 遍历模板:

    ArrayList<String> alist = new ArrayList<String>();
    for(int i=0; i<alist.size(); i++){//返回指定位置的元素对象ArrayList list = arrays.get(i);
    }
    

    注意:普通 for 循环,可以获得指定位置的元素

相关文章:

集合的三种遍历方式

迭代器&#xff08;Iterator&#xff09; 概述&#xff1a;Iterator 是个接口&#xff0c;迭代器是集合的专用遍历方式 使用方法&#xff0c;我们想要使用迭代器&#xff0c;必须首先得到集合对象&#xff0c;通过集合对象生成迭代器对象&#xff0c;才能进行集合的遍历 常用…...

Mysql 中的常用命令

在数字化世界中&#xff0c;数据库已经成为数据存储和处理的核心。而MySQL&#xff0c;作为最受欢迎的关系型数据库管理系统之一&#xff0c;其强大的功能和易用性使它成为开发者和企业的首选。掌握MySQL中的常用命令&#xff0c;是每一位数据库管理员和开发者的基本要求。本篇…...

【Java】CompletableFuture使用方法

背景 CompletableFuture是Java 8中引入的一个类&#xff0c;它实现了Future和CompletionStage接口&#xff0c;用于表示异步计算的结果。使用CompletableFuture可以方便地编写异步编程的代码&#xff0c;并且可以链式地组合多个异步操作。 接口 CompletableFuture实现了Future…...

摆烂式学习ssh

摆烂式学习ssh ssh工作原理ssh基本使用sshd配置文件密钥登录1.客户端2.服务器3.注意事项4.使用密钥登录测试 ssh高级使用技巧1.在非正规端口启动2.rsync 命令3.透过 ssh 通道加密原本无加密的服务4.以ssh信道配合x server 传递图形接口5.ssh配合virtualbox虚拟机使用技巧 ssh工…...

用 Python 抓取 bilibili 弹幕并分析!

01 实现思路 首先&#xff0c;利用哔哩哔哩的弹幕接口&#xff0c;把数据保存到本地。接着&#xff0c;对数据进行分词。最后&#xff0c;做了评论的可视化。 02 弹幕数据 平常我们在看视频时&#xff0c;弹幕是出现在视频上的。实际上在网页中&#xff0c;弹幕是被隐藏在源代码…...

目标检测YOLO实战应用案例100讲-基于红外图像处理的无人机光伏组件故障检测(续)

目录 3.2 自适应温度阈值故障检测算法设计 3.3 基于拟合灰度曲线的故障检测方案设计...

go mod 命令详解

文章目录 1.关于模块2.关于 go mod3.格式4.示例参考文献 1.关于模块 模块&#xff08;Modules&#xff09;是 Go 1.11 版本引入的一依赖管理机制。 一个模块是 Go packages 的集合&#xff0c;定义在项目根目录下的 go.mod 文件。go.mod 文件定义了模块的路径&#xff0c;这也…...

花了一小时,拿python手搓了一个考研背单词软件

听说没有好用的电脑端背单词软件&#xff1f;只好麻烦一下&#xff0c;花了一小时&#xff0c;拿python手搓了一个考研背单词软件。 代码已经开源在我的github上&#xff0c;欢迎大家STAR&#xff01; 其中&#xff0c;数据是存放在sqlite中&#xff0c;形近词跳转是根据jaro …...

一篇文章学会Vim

一篇文章学会Vim 声明&#xff1a;以下内容均为我个人的理解&#xff0c;如果发现错误或者疑问可以联系我共同探讨 简介 Vim是一个高度可定制的终端文本编辑器&#xff0c;它可以很方便的创建和修改任何类型的文本。作为vi的升级版&#xff0c;有许多新的特性(以下列出的特性…...

面试算法91:粉刷房子

题目 一排n幢房子要粉刷成红色、绿色和蓝色&#xff0c;不同房子被粉刷成不同颜色的成本不同。用一个n3的数组表示n幢房子分别用3种颜色粉刷的成本。要求任意相邻的两幢房子的颜色都不一样&#xff0c;请计算粉刷这n幢房子的最少成本。例如&#xff0c;粉刷3幢房子的成本分别为…...

js逆向第11例:猿人学第4题雪碧图、样式干扰

任务4:采集这5页的全部数字,计算加和并提交结果 打开控制台查看请求地址https://match.yuanrenxue.cn/api/match/4,返回的是一段html网页代码 复制出来格式化后,查看具体内容如下: <td><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAA…...

OpenEular23.09(欧拉)操作系统为企业搭建独立的K8S集群环境,详细流程+截图

一.环境&#xff1b; win10&#xff0c;vmware16 pro&#xff0c;openeular23.09&#xff0c;linux内核 6.4.0-10.1.0.20.oe2309.x86_64&#xff0c; docker-engine 2:18.09.0-328&#xff0c;kubernetes 1.25.3&#xff0c;containerd 1.6.22&#xff0c;calico v3.25 集群…...

学生成绩管理系统半成品

C语言的老师在给我们讲指针的时候&#xff0c;讲的并不深入&#xff0c;她用了一个学生成绩管理系统来引入指针这个东西并给我们讲解&#xff0c;但我觉得她的管理系统功能有一些不足&#xff0c;并且不是很美观&#xff0c;所以说心血来潮&#xff0c;自己也动手写了一个学生成…...

国家信息安全水平等级考试NISP二级题目卷⑤(包含答案)

国家信息安全水平等级考试NISP二级题目卷&#xff08;五&#xff09; 国家信息安全水平等级考试NISP二级题目卷&#xff08;五&#xff09;需要报考咨询可以私信博主&#xff01; 前言&#xff1a; 国家信息安全水平考试(NISP)二级&#xff0c;被称为校园版”CISP”,由中国信息…...

4.快速实现增删改查,模糊查询功能

打开springboot项目&#xff0c;在com.example下建包common,在common下新建Result.java 4.1封装统一的返回数据结构 1.在Result.java中编写如下代码&#xff1a; private static final String *SUCCESS*"0"; private static final String *ERROR*"-1"; p…...

【Redux】自己动手实现redux和react-redux

1. React提供context的作用 在class组件的世界里&#xff0c;如果后代组件共享某些状态&#xff0c;比如主题色、语言键&#xff0c;则需要将这些状态提升到根组件&#xff0c;以props的方式从根组件向后代组件一层一层传递&#xff0c;这样则需要在每层写props.someData&#…...

代码随想录算法训练营day6|242.有效的字母异位词、349.两个数组的交集、202.快乐数

哈希表理论基础 建议&#xff1a;大家要了解哈希表的内部实现原理&#xff0c;哈希函数&#xff0c;哈希碰撞&#xff0c;以及常见哈希表的区别&#xff0c;数组&#xff0c;set 和map。 什么时候想到用哈希法&#xff0c;当我们遇到了要快速判断一个元素是否出现集合里的时…...

2024.1.4每日一题

LeetCode每日一题 2397.被列覆盖的最多行数 2397. 被列覆盖的最多行数 - 力扣&#xff08;LeetCode&#xff09; 题目描述 给你一个下标从 0 开始、大小为 m x n 的二进制矩阵 matrix &#xff1b;另给你一个整数 numSelect&#xff0c;表示你必须从 matrix 中选择的 不同 …...

C++协程和线程的区别?详细介绍一下C++协程

C协程和线程的区别 线程是操作系统级别的资源&#xff0c;由操作系统负责调度和切换&#xff0c;每个线程都有自己的堆栈和执行上下文。线程之间的切换需要保存和恢复线程的执行上下文&#xff0c;这个过程有一定的开销。协程是用户态的轻量级线程&#xff0c;协程的调度完全由…...

数字信号处理期末复习——计算大题(一)

个人名片&#xff1a; &#x1f981;作者简介&#xff1a;一名喜欢分享和记录学习的在校大学生 &#x1f42f;个人主页&#xff1a;妄北y &#x1f427;个人QQ&#xff1a;2061314755 &#x1f43b;个人邮箱&#xff1a;2061314755qq.com &#x1f989;个人WeChat&#xff1a;V…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录&#xff0c;但是由于这个树组件的节点越来越多&#xff0c;导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多&#xff0c;导致的浏览器卡顿&#xff0c;这里很明显就需要用到虚拟列表的技术&…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...