java map()和forEach循环,实例代码分享

BSO 2020-09-30 16:21:45 java常见问答 3841

java是一门内容极其丰富知识群非常庞大的编程语言。因此也有很多人在坚持学习java,为了更好的发展。今天就来为大家介绍一些java的知识,也就是java map()和forEach循环,并且为大家分享实例代码,一起来看看吧。

一、首先说一下map()循环:

1.map方法将数组的所有成员依次传入参数函数,然后把每一次的执行结果组成一个新数组返回。

注意:是返回一个新数组,而不会改变原数组。代码展示如下:

var numbers = [1, 2, 3];
numbers.map(function (n)
{
    return n + 1;
});
// [2, 3, 4] 
numbers // [1, 2, 3]

2.map方法接受一个函数作为参数。该函数调用时,map方法向它传入三个参数:当前成员、当前位置和数组本身。代码展示如下:

[1, 2, 3].map(function (elem, index, arr)
{
    return elem * index;
});
// [0, 2, 6]

3.map()循环还可以接受第二个参数,用来绑定回调函数内部的this变量,将回调函数内部的this对象,指向第二个参数,间接操作这个参数(一般是数组)。代码展示如下:

var arr = ['a', 'b', 'c'];
[1, 2].map(function (e)
{
    return this[e];
}, arr)
// ['b', 'c']

上面代码通过map方法的第二个参数,将回调函数内部的this对象,指向arr数组。间接操作了数组arr; forEach同样具有这个功能。

二、再为大家介绍一下forEach循环

forEach方法与map方法很相似,也是对数组的所有成员依次执行参数函数。

但是,forEach方法不返回值,只用来操作数据。也就是说,如果数组遍历的目的是为了得到返回值,那么使用map方法,否则使用forEach方法。forEach的用法与map方法一致,参数是一个函数,该函数同样接受三个参数:当前值、当前位置、整个数组。代码展示如下:

function log(element, index, array)
{
    console.log('[' + index + '] = ' + element);
};
[2, 5, 9].forEach(log); // [0] = 2 // [1] = 5 // [2] = 9

此外,forEach循环和map循环一样也可以用绑定回调函数内部的this变量,间接操作其它变量。

以上就是关于java map()和forEach循环的主要内容了,并且用实际的代码为大家展示出来,还是十分简单明了的。如果你对java知识感兴趣,想要了解更多java经典例子,敬请关注奇Q工具网。

推荐阅读:

java中map接口包含了哪些内容?详细解析

java枚举(enum)详解,EnumMap类

java遍历Map集合的四种方式介绍