java遍历数组的各种方法_遍历数组的常用方法「建议收藏」

java遍历数组的各种方法_遍历数组的常用方法「建议收藏」1.最传统方法for循环1vararr=[“first”,”second”,”third”,”fourth”,3,5,8];2for(vari=0;i<arr.length;i++){3console.log(arr[i]);4}5//输出:6first7second8third9fourth10311512…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1.最传统方法 for循环

1 var arr = [“first”,”second”,”third”,”fourth”,3,5,8];2 for(var i = 0; i < arr.length;i++){3 console.log(arr[i]);4 }5 //输出:

6 first7 second8 third9 fourth10 3

11 5

12 8

for… in

1 var arr = [“first”,”second”,’third’ ,”fourth”,3,5,8];2 for(var i inarr){3 console.log(arr[i] +’/’ +i);4 }5 //输出结果为:

6 first/0

7 second/1

8 third/2

9 fourth/3

10 3/4

11 5/5

12 8/6

for…of

1 var arr = [“first”,”second”,’third’ ,”fourth”,3,5,8];2 for(varitem of arr){3 console.log(item);4 }5 //输出结果:

6 first7 second8 third9 fourth10 3

11 5

12 8

虽然for… in 、 for… of 都能够变历数组,但是两者还是有很大区别的,先说结论:

两者的主要区别在于他们的迭代方式

推荐在循环对象属性的时候,使用for in,在遍历数组的时候推荐使用for of

for…in 循环出来的是key, for…of循环出来的是value

for…in 是ES5 标准,for …of 是ES6标准,兼容性可能存在些问题,请注意使用

for…of 不能遍历普通的对象,需要和Object.keys() 搭配使用

2.foreach方法:被传递给foreach的函数会在数组的每个元素上执行一次,元素作为参数传递给该函数

1 var arr = [“first”,”second”,”third”,”fourth”,3,5,8];2 //element 表示arr的单元项,index 表示arr单元项对应的索引值

3 arr.forEach(function(element,index){4 console.log(element + ‘/’ +index);5

6 })7 //输出结果:

8 first/0

9 second/1

10 third/2

11 fourth/3

12 3/4

13 5/5

14 8/6

注意:未赋值的值是不会在foreach循环迭代的,但是手动赋值为undefined的元素是会被列出的

1 var arr1 = [“first”,”second”, ,”fourth”,3,5,8];2 arr1.forEach(function(element,index){3 console.log(element + ‘/’ +index);4

5 })6 //输出结果

7 first/0

8 second/1

9 fourth/3

10 3/4

11 5/5

12 8/6

3.map 遍历数组,并通过callback对数组元素进行操作,并将所有操作结果放入数组中并返回该数组

1 var arr = [“first”,”second”,’third’ ,”fourth”];2 var arr2 = arr.map(function(item){3 returnitem.toUpperCase();4 })5 console.log(arr2);6 //输出:

7 [FIRST,SECOND,THIRD, FOURTH]

4.filter( )返回一个包含所有在回调函数上返回为true的元素新数组,回调函数在此担任的是过滤器的角色,当元素符和条件,过滤器就返回true,而filter则会返回所有符合过滤条件的元素

1 var arr = [“first”,”second”,’third’ ,”fourth”,3,5,8];2 var arr3 = arr.filter(function(item){3 if(typeof item == ‘number’){4 returnitem;5 }6 })7 console.log(arr3);8 //输出结果:

9 [3,5,8]

5. every() 当数组中的每一个元素在callback上被返回true时就返回true(注意:要求每一个单元项都返回true时才为true)

every()与filter()的区别是:后者会返回所有符合过滤条件的元素;前者会判断是不是数组中的所有元素都符合条件,并且返回的是布尔值

1 var arr = [“first”,”second”,’third’ ,”fourth”,3,5,8];2 var bol = arr.every(function(element){3 if(typeof element == ‘string’){4 returnelement;5 }6 })7 console.log(bol); //false

6.some()只要数组中有一项在callback上就返回true

every()与some()的区别是:前者要求所有元素都符合条件才返回true,后者要求只要有符合条件的就返回true

1 var arr = [“first”,”second”,’third’ ,”fourth”,3,5,8];2 var bol = arr.some(function(element){3 if(typeof element == ‘string’){4 returnelement;5 }6 })7 console.log(bol); //true

7.findindex() ES6数组新API,找到符合条件的索引并返回

1 var ages = [3, 10, 18, 20];2

3 functioncheckAdult(age) {4 return age >= 18;5 }

function(currentValue, index,arr)

参数currentValue:必需。当前元素

index:可选。当前元素的索引

arr:可选.当前元素所属的数组对象

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192900.html原文链接:https://javaforall.net

(0)
上一篇 2025年12月6日 上午7:01
下一篇 2025年12月6日 上午7:43


相关推荐

  • PHP工厂模式的好处

    PHP工厂模式的好处 顾名思义,工厂是可以加工零件的,PHP程序中的工厂模式也有相同的功能,可以方便的使用一个静态的工厂方法来实例化某一个类,那么这样做的好处是什么呢?初学PHP的设计模式,以下是我个人的理解 一般我们实例化一个类会给它一些参数以便在其构析的时候可以根据不同的参数反馈出我们需要的结果。举例说明,以下是一个User类,非常简单:01.02.      03.    int

    2022年7月25日
    14
  • idea2021激活吗[最新免费获取]

    (idea2021激活吗)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月30日
    49
  • 武汉java公司排名_武汉十大it培训机构

    武汉java公司排名_武汉十大it培训机构说起Java大家一定不陌生,毕竟Java这几年通过互联网+理念慢慢的渗透到了各大行业中,现在的Java软件开发岗位尤为火爆。同时也吸引着不少年轻人选择通过Java培训加入到行业中,在武汉,Java培训机构也是不少,想要在其中选择一家适合自己的是不太简单的,在这里,排名榜小编作为一名IT行业的观察者,从课程设计、教师资质、就业等多方面对武汉Java培训机构进行了一系列的考察和筛选,得到了如下武汉Java培训机构排名榜单,排名结果仅供大家参考:1.武汉动力节点上榜理由:我相信大家对于动力节点的.

    2022年10月3日
    4
  • 学习方法

    学习方法

    2021年8月17日
    53
  • MessageDigest简单介绍

    MessageDigest简单介绍本文博客原文參考文章:http://blog.sina.com.cn/s/blog_4f36423201000c1e.html一、概述java.security.MessageDigest类用于为应用

    2022年6月30日
    21
  • 工程流体力学笔记暂记18(二元漩涡的速度和压强分布)

    工程流体力学笔记暂记18(二元漩涡的速度和压强分布)二元漩涡与实际的龙卷风或台风的流场相对应漩涡区对应台风的中心区域诱导速度场对应台风的外围区域对速度场分布的分析 以一竖直的龙卷风为例子在一水平面做一切面的到一个二元漩涡无旋流场满足欧拉积分方程我们所研究的二元积分在同一水平面上因此欧拉积分方程上的 z 这一项是可以削掉的内部情况内部为有旋运动只能通过平面定常流动欧拉运动微分方程求解压强分布首先建立平面定常流动的欧拉运动微分方程因为我们所考虑的二维涌动实在水平面上不考虑竖直方向的质量力这一运动微分方程是对有旋场和无旋场都适用的

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号