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

多语言for循环遍历总结

多语言for循环遍历总结

工作中经常需要遍历对象,但不同编程语言之间存在一些细微差别。为了便于比较和参考,这里对一些常用的遍历方法进行了总结。

JAVA

数组遍历

@Test
void ArrayForTest() {String[] array = {"刘备","关羽", "张飞"};// 第一种方式:下标遍历for (int i=0; i<array.length; i++) {System.out.println(array[i]);}// 第二种方式:foreach遍历System.out.println("--------------------");for (String value : array) {System.out.println(value);}// 第三种方式:转成list遍历System.out.println("--------------------");Arrays.asList(array).forEach(e -> System.out.println(e));// 第四种方式:转成流使用stream遍历System.out.println("--------------------");Arrays.stream(array).forEach(System.out::println);
}

列表遍历

@Test
void ListForTest() {List<String> list = Arrays.asList("刘备", "关羽", "张飞");// 第一种方式:下标遍历for (int i=0; i<list.size(); i++) {System.out.println(list.get(i));}// 第二种方式:foreach遍历System.out.println("--------------------");for (String value : list) {System.out.println(value);}// 第三种方式:forEach遍历System.out.println("--------------------");list.forEach(System.out::println);// 第三种方式:stream流遍历System.out.println("--------------------");list.stream().forEach(System.out::println);
}

map遍历

@Test
void mapForTest() {Map<String, Integer> map = new HashMap<>();map.put("刘备",1);map.put("关羽",2);map.put("张飞",3);System.out.println(map.entrySet());// 使用map.entrySet遍历---最常见和最常用的遍历方式for (Map.Entry<String, Integer> entry : map.entrySet()) {String key = entry.getKey();Integer value = entry.getValue();// 处理键值对System.out.println(key+"--"+value);}System.out.println("-------------");// Java 8 的 Lambda 表达式 -----这个感觉很方便,之后在java8环境用这种方式遍历map.forEach((key, value) -> {// 处理键值对System.out.println(key + "--" +value);});System.out.println("-------------");// 遍历 keySet() 或 values()for (String key : map.keySet()) {System.out.print(key + " ");}System.out.println();for (Integer value : map.values()) {// 处理值System.out.print(value + " ");}System.out.println();System.out.println("-------------");// stream流遍历map.entrySet().stream().forEach(entry -> {String key = entry.getKey();Integer value = entry.getValue();// 处理键值对System.out.println(key+"--"+value);});
}

Javascript

这边注意的几个点是js中使用常用的for循环中,有两种常用的循环:for in循环和for of 循环:

for in :是为了遍历对象而创建的
作用:可以以任意顺序遍历一个对象的除Symbol以外的可枚举属性。
语法:for (variable in object){}

这里注意不要使用for in来遍历数组,会遍历数组的索引,而不是具体的元素

for of :是为了遍历迭代器而创建的
作用:在可迭代对象上创建一个迭代循环,遍历要迭代的数据。无法遍历非迭代对象。
内置可迭代对象有:Array,Map,Set,String,TypedArray
语法:for (variable of iterable){}

简单来说:for…in 遍历索引,而 for…of 循环遍历值

数组遍历

const myArray = [1, 2, 3, 4, 5];// 最普通的for循环
for (let i = 0; i < myArray.length; i++) {console.log(myArray[i]);
}// 使用数组内置的forEach方式
myArray.forEach((element) => {console.log(element);
});// 使用 for...of 循环
for (const element of myArray) {console.log(element);
}// 使用 map 方法: map 方法创建一个新数组,通过对原始数组的每个元素应用一个函数来实现。
const doubledArray = myArray.map((element) => element * 2);
console.log(doubledArray);// 使用 filter 方法:filter 方法创建一个新数组,其中包含满足指定条件的原始数组的元素。
const evenNumbers = myArray.filter((element) => element % 2 === 0);
console.log(evenNumbers);

Magic-api

magic-api中数组的for循环用的就是in,和js有所不同

循环集合

import 'java.lang.System' as System;
var list = [1,2,3];
for(index,item in list){    //如果不需要index,也可以写成for(item in list)System.out.println(index + ":" + item);
}

循环指定次数

var sum = 0;
for(value in range(0,100)){    //包括0包括100sum = sum + value; //不支持+= -= *= /= ++ -- 这种运算
}
return sum;
/*
结果:5050
*/

循环map

import 'java.lang.System' as System;
var map = {key1 : 123,key2 : 456
};
for(key,value in map){    //如果不需要key,也可以写成for(value in map)System.out.println(key + ":" + value);
}
/*
结果:
key1:123
key2:456
*/

Python

常用的两种遍历方式

cities = ["Guangzhou", "Beijing", "Shanghai", "Nanjing"]
for city in cities:print(f"当前城市: {city}")fruits = ["banana", "apple", "mango"]
for index in range(len(fruits)):print(f"当前水果: {fruits[index]}")

相关文章:

多语言for循环遍历总结

多语言for循环遍历总结 工作中经常需要遍历对象&#xff0c;但不同编程语言之间存在一些细微差别。为了便于比较和参考&#xff0c;这里对一些常用的遍历方法进行了总结。 JAVA 数组遍历 Test void ArrayForTest() {String[] array {"刘备","关羽", &…...

python API自动化(Jsonpath断言、接口关联及加密处理)

JsonPath应用及断言 重要 自动化要解决的核心问题 &#xff1a;进行自动测试-自动校验&#xff08;进行结果的校验 主要能够通过这个方式提取数据业务场景&#xff1a;断言 、接口关联 {key:value}网址&#xff1a;附&#xff1a;在线解析 JSONPath解析器 - 一个工具箱 - 好用…...

C++入门5——C/C++动态内存管理(new与delete)

目录 1. 一图搞懂C/C的内存分布 2. 存在动态内存分配的原因 3. C语言中的动态内存管理方式 4. C内存管理方式 4.1 new/delete操作内置类型 4.2 new/delete操作自定义类型 1. 一图搞懂C/C的内存分布 说明&#xff1a; 1. 栈区&#xff08;stack&#xff09;&#xff1a;在…...

leetcode 743.网络延时时间

思路&#xff1a;迪杰斯特拉最短路径 总结起来其实就两件事&#xff1a; 1.从所给起点开始能不能到达所有点&#xff1b; 2.如果能够到达所有点&#xff0c;那么这个时候需要判断每一个点到源点的最短距离&#xff0c;然后从这些点中求出最大值。 所以用最小路径求解是最划…...

MATLAB导入导出Excel的方法|读与写Excel的命令|附例程的github下载链接

前言 前段时间遇到一个需求&#xff1a;导出变量到Excel里面&#xff0c;这里给出一些命令&#xff0c;同时给一个示例供大家参考。 MATLAB读/写Excel的命令 在MATLAB中&#xff0c;可以使用以下命令来读写Excel文件&#xff1a; 读取Excel文件&#xff1a; xlsread(filen…...

【第4章】SpringBoot实战篇之登录优化(含redis使用)

文章目录 前言一、整合redis1. 引入库2. 配置 二、登录优化1.登录2.拦截器3. 登出4. 修改密码 总结 前言 上一章的登录接口,我们将用户登录信息放置于Map中,存在一个问题,集群部署无法共享以及应用停止用户登录信息即丢失,接下来我们整合redis来整合这个问题。 一、整合redis …...

数据结构:详解二叉树(树,二叉树顺序结构,堆的实现与应用,二叉树链式结构,链式二叉树的4种遍历方式)

目录 1.树的概念和结构 1.1树的概念 1.2树的相关概念 1.3树的代码表示 2.二叉树的概念及结构 2.1二叉树的概念 2.2特殊的二叉树 2.3二叉树的存储结构 2.3.1顺序存储 2.3.2链式存储 3.二叉树的顺序结构和实现 3.1二叉树的顺序结构 3.2堆的概念和结构 3.3堆的特点 3…...

HarmonyOS-9(stage模式)

配置文件 {"module": {"requestPermissions": [ //权限{"name": "ohos.permission.EXECUTE_INSIGHT_INTENT"}],"name": "entry", //模块的名称"type": "entry", //模块类型 :ability类型和…...

RestTemplate代码内部访问RESTful服务的客户端工具

1. 前言 在当今的互联网时代&#xff0c;RESTful服务已经成为了一种流行的服务架构风格&#xff0c;它提供了简单、轻量级、灵活、可扩展的方式来构建和访问Web服务。而在Java开发中&#xff0c;Spring框架提供了一个非常方便的工具——RestTemplate&#xff0c;用于访问和调用…...

Flutter 中的 SliverLayoutBuilder 小部件:全面指南

Flutter 中的 SliverLayoutBuilder 小部件&#xff1a;全面指南 Flutter 是一个功能强大的 UI 框架&#xff0c;它提供了丰富的组件来帮助开发者构建高性能、美观的跨平台应用。在 Flutter 的滚动视图系统中&#xff0c;SliverLayoutBuilder 是一个允许开发者根据当前滚动位置…...

家政预约小程序11新增预约

目录 1 创建数据源2 创建页面3 显示选中的服务信息4 设置表单容器5 配置地图6 配置预约成功页面7 从详情页到预约页总结 用户在浏览家政小程序的具体服务时&#xff0c;如果希望预约的&#xff0c;可以在详情页点击立即预约按钮&#xff0c;填写具体的信息&#xff0c;方便家政…...

AI雷达小程序个人名片系统源码 PHP+MYSQL组合开发 带完整的安装代码包以及搭建教程

系统概述 随着移动互联网的普及和社交媒体的兴起&#xff0c;人们获取信息和建立联系的方式发生了翻天覆地的变化。传统的纸质名片已经无法满足现代人的需求&#xff0c;而小程序作为一种轻量级应用&#xff0c;具有无需安装、即开即用、易于分享等特点&#xff0c;成为了个人…...

Kafka生产者消息异步发送并返回发送信息api编写教程

1.引入依赖&#xff08;pox.xml文件&#xff09; <dependencies> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>3.6.2</version> </dependency> </depende…...

WiFi串口服务器与工业路由器:局域网应用的协同之力

在工业物联网&#xff08;IIoT&#xff09;迅猛发展的当下&#xff0c;局域网&#xff08;LAN&#xff09;作为连接工业设备与数据中心的桥梁&#xff0c;其重要性日益凸显。WiFi串口服务器与工业路由器作为局域网中的关键组件&#xff0c;以其独特的性能和功能&#xff0c;为传…...

Unity功能——通过按键设置物体朝左/右旋转(含C#转xlua版)

博文简介&#xff1a; 开发场景&#xff1a;unity的3d场景&#xff1b; 功能&#xff1a;当设定的键被按下时&#xff0c;进行物体朝左/右旋转&#xff1b; 适用范围&#xff1a;本文代码适用于设置3d物体朝左右旋转&#xff0c;也适用于设置UI对象朝左右旋转&#xf…...

泛微ecology开发修炼之旅

我将多年泛微ecology开发经验&#xff0c;进行了总结&#xff0c;然后分享给大家。 泛微开发修炼之旅 泛微开发修炼之旅--01搭建开发环境 泛微开发修炼之旅--02开发接口demo 泛微开发修炼之旅--03常用数据表结构讲解 泛微开发修炼之旅--04常用数据库操作工具类封装 。。。。 我…...

PostgreSQL的视图pg_locks

PostgreSQL的视图pg_locks pg_locks 是 PostgreSQL 提供的系统视图&#xff0c;用于显示当前数据库中的锁信息。通过查询这个视图&#xff0c;数据库管理员可以监控锁的使用情况&#xff0c;识别潜在的锁争用和死锁问题&#xff0c;并优化数据库性能。 pg_locks 视图字段说明…...

元宇宙NFG结合IPO线上营销模型合理降税

在当今快速演进的互联网和区块链技术背景下&#xff0c;我们见证了从移动端购物到区块链热潮&#xff0c;再到如今市场竞争日趋激烈的变革。尤其是在2024年这个关键节点&#xff0c;许多平台为了吸引用户&#xff0c;推出了各种创新的商业模式。然而&#xff0c;如何在这样的环…...

Python打印当前目录下,所有文件名的首字母

代码如下&#xff1a; #!/usr/bin/env python3 """ 按顺序打印当前目录下&#xff0c;所有文件名的首字母&#xff08;忽略大小写&#xff09; """ import sys from pathlib import Pathdef main() -> None:ps Path(__file__).parent.glob(…...

程序员应该有什么职业素养?

程序员的六大职业素养&#xff1a;构建成功职业生涯的基石 在不断变化的技术世界中&#xff0c;程序员不单要保持技术的锋利&#xff0c;也需要培养相应的职业素养&#xff0c;这些素养在很大程度上决定了一个程序员的职业生涯能否走得长远。以下是我认为最为重要的六大职业素…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...