Iterator用法

article/2025/9/19 8:39:28

 Interator迭代集合,可以进行remove操作。

public class Test {public static void main(String[] args) {List<String> lists = new ArrayList<>();lists.add("Sam");lists.add("Tom");lists.add("David");lists.add("AAA");Iterator<String> iterator = lists.iterator();while (iterator.hasNext()) {if (iterator.next().equals("AAA")) {iterator.remove();}}for (String str : lists){System.out.println("for循环:"+str);}}
}

用lambda表达式:

public class Test {public static void main(String[] args) {List<String> lists = new ArrayList<>();lists.add("Sam");lists.add("Tom");lists.add("David");lists.add("AAA");Iterator<String> iterator = lists.iterator();iterator.forEachRemaining(str -> System.out.println("lambda循环1:"+str));iterator.forEachRemaining(str -> System.out.println("lambda循环2:"+str));}
}

iterator使用next()方法跳转到下一步,过程不可逆。

foreach与iterator的优劣

 foreach可用于遍历任何集合或数组,而且操作简单易懂,他唯一的不好就是需要了解集合内部类型。
 iterator是最强大的,他可以随时修改或者删除集合内部的元素,并且是在不需要知道元素和集合的类型的情况下进行的,当你需要对不同的容器实现同样的遍历方式时,迭代器是最好的选择。

总结

  1. 当只进行遍历查询的时候可以使用foreach来简化代码
  2. 如果涉及到删除操作,foreach会出现问题,必须使用Iterator

http://chatgpt.dhexx.cn/article/hlHAmUOD.shtml

相关文章

Java迭代器(Iterator)的用法

Java迭代器&#xff08;Iterator&#xff09;的用法 什么是IteratorIterator的应用 什么是Iterator Iterator(迭代器)&#xff0c;它是一种用于访问集合的方法&#xff0c;可用于迭代 ArrayList 和 HashSet 等集合(或者也可以说成&#xff0c;遍历并选择序列中的对象)。 Iter…

浅谈MySQL数据库的设计流程

系列文章目录 本次文章的内容是记录有关于MySQL学习中对数据库设计流程的一个记录和在设计流程中需要注意的一些事情。 文章目录 系列文章目录前言一、数据库设计1.1为什么要着重于对数据库的详细设计1.2数据库的设计流程&#xff08;1&#xff09;根据应用系统的功能&#xf…

数据库设计说明书

目录 1引言 1.1编写目的 1.2背景 1.3定义 1.4参考资料 2外部设计 2.1标识符和状态 2.2使用它的程序 2.3约定 2.4专门指导 2.5支持软件 3结构设计 3.1概念结构设计 3.2逻辑结构设计 3.3物理结构设计 4运用设计 4.1数据字典设计 4.2安全保密设计 数据库设计说明…

MySQL之数据库设计六个步骤

前言 今天有个前同事去面试&#xff0c;被面试官问了一个这样的问题&#xff1a;如果让你去设计数据库你改怎么设计&#xff1f;或者有哪些步骤&#xff1f;被问到这里可能我们就懵逼了&#xff0c;是啊&#xff0c;该怎么去设计呢。 在软件开发的过程中&#xff0c;数据库设…

用mysql设计数据库的步骤_数据库设计的主要步骤是什么

数据库设计的主要步骤是什么 发布时间&#xff1a;2020-08-12 10:00:24 来源&#xff1a;亿速云 阅读&#xff1a;141 作者&#xff1a;小新 这篇文章给大家分享的是有关数据库设计的主要步骤是什么的内容。小编觉得挺实用的&#xff0c;因此分享给大家做个参考。一起跟随小编过…

关系数据库设计步骤

看这篇文章之前&#xff0c;希望大家能够对数据库系统、数据模型有知识储备&#xff0c;如果有疑惑可以看我的另外一篇博客数据库系统。 还需要对关系型数据库基础知识有所了解&#xff0c;有疑惑朋友可以看关系型数据库基础知识 文章目录 数据库设计的步骤概念结构设计E-R模型…

数据库设计步骤(超级详细)|数据库

数据库设计 我们先来看这样一个问题 假如遇到下面这样的设计需求&#xff0c;我们如何完成数据库的设计呢&#xff1f; 设计需求&#xff1a; 假设商品经销商有基本实体集&#xff1a;供应商Vendors、产品目录Products、顾客信息Customers和顾客订单Orders。 各个实体的属性集…

nginx跨域|配置nginx跨域详解

在项目的nginx配置目录中&#xff0c;添加如下命令即可解决跨域问题&#xff0c;亲测有效。 # $http_origin动态获取请求客户端请求的域 不用*的原因是带cookie的请求不支持*号 add_header Access-Control-Allow-Origin $http_origin; # 表示请求头的字段 动态获取 add_head…

nginx跨域配置步骤

假设接口服务器地址&#xff1a;http://192.168.2.1:8081 1、先查看接口本身是否能调通&#xff08;随便找个get接口在浏览器测试下&#xff0c;如&#xff1a;http://192.168.2.1:8081/testmanage/test/deleteTest&#xff09; 2、找到nginx的压缩目录&#xff0c;修改conf/…

Nginx跨域配置详解

一、概念 Ningx,是轻量级、开源的web服务器&#xff0c;具有高性能的HTTP和反向代理服务器&#xff0c;同时也是一个IMAP/POP3/SMTP代理服务器。 优势&#xff1a; 以事件驱动的方式编写&#xff0c;使其具有高并发高性能可扩展性好热部署 应用场景 静态资源服务&#xff0…

CORS解决跨域问题(Nginx跨域配置)

背景&#xff1a; 同域&#xff1a;域名&#xff08;父域名和子域名都相同&#xff09;&#xff0c;端口&#xff0c;协议都相同 跨域&#xff1a;非同域的请求 问题&#xff1a; 浏览器上&#xff0c;我们访问127.0.0.1:80&#xff0c;但是127.0.0.1:80 会去请求127.0.0.1:…

Nginx配置反向代理解决跨域问题

通过Nginx配置反向代理结果跨域问题 第一步&#xff1a;下载Nginx 一、下载 官网下载地址&#xff1a;http://nginx.org/en/download.html 我下载的版本&#xff1a;http://nginx.org/download/nginx-1.15.2.zip &#xff08;我也是参考网上的步骤&#xff0c;所以下载的不是…

Nginx配置跨域及解析

一、代码 先放上nginx配置代码 # 以代理百度地图api为例location /mymap/ {proxy_pass http://api.map.baidu.com/;# 配置跨域代理 add_header Access-Control-Allow-Origin $http_origin;add_header Access-Control-Allow-Methods GET,POST,OPTIONS…

nginx配置详解,nginx跨域问题

文章目录 前言更改hosts文件新增velocityerp.top.conf配置文件nginx配置header参数&#xff08;解决跨域&#xff09;,接口方配置nginx反向代理(解决跨域)&#xff0c;发送方配置nginx端口转发&#xff08;解决跨域&#xff09;nginx内部跳转nginx配置优先级详解 前言 本文介绍…

nginx 配置支持跨域

在nginx.conf文件内&#xff0c;server中加入以下内容 #允许跨域请求的域&#xff0c;*代表所有 add_header Access-Control-Allow-Origin *; #允许带上cookie请求 add_header Access-Control-Allow-Credentials true; #允许请求的方法&#xff0c;比如 GET/POST/PUT/DELETE a…

通过Nginx来解决跨域问题

Nginx跨域实现 首先大家要搞清楚什么是跨域&#xff0c;为什么会有跨域情况的出现。哪些情况属于跨域&#xff1f; 跨域&#xff1a;由于浏览器的同源策略&#xff0c;即属于不同域的页面之间不能相互访问各自的页面内容 注&#xff1a;同源策略&#xff0c;单说来就是同协议&a…

Nginx 解决跨域

项目准备 前端网站地址&#xff1a;http://localhost:8080 服务端网址&#xff1a;http://localhost:8081 确认服务端是没有处理跨域的&#xff0c;先用postman测试服务端接口是正常的 当前端网站8080去访问服务端接口时&#xff0c;就产生了跨域问题&#xff0c;那么如何解…

1 Nginx跨域配置

跨域问题在之前的单体架构开发中&#xff0c;其实是比较少见的问题&#xff0c;除非是需要接入第三方SDK时&#xff0c;才需要处理此问题。但随着现在前后端分离、分布式架构的流行&#xff0c;跨域问题也成为了每个Java开发必须要懂得解决的一个问题。 跨域问题产生的原因 产…

Nginx跨域配置

随着越来越多的项目走向了前后端分离&#xff0c;前端服务&#xff0c;需要访问到不同的后端地址&#xff0c;经常遇到跨域问题。本文主要介绍使用Nginx解决跨域问题。 1.什么是跨域 由于浏览器的同源策略&#xff0c;用来限制从一个源加载的文档或脚本与来自另一个源的资源进…