如何 把 map 变成数组,在把数组变成map
时间: 2024-01-23 07:03:21 浏览: 31
将map转换为数组可以使用range迭代器,然后使用append()函数将每个键值对添加到数组中。例如:
```
m := map[string]int{"a": 1, "b": 2, "c": 3}
var arr []string
for k, v := range m {
arr = append(arr, k+":"+strconv.Itoa(v))
}
```
将数组转换回map,可以使用循环遍历数组,并使用strings.Split()函数将键值对分离出来,然后将它们存入map中。例如:
```
var m = make(map[string]int)
for _, pair := range arr {
kv := strings.Split(pair, ":")
key := kv[0]
val, _ := strconv.Atoi(kv[1])
m[key] = val
}
```
注意,如果数组中包含重复的键,则最后一个值将覆盖之前的值。
相关问题
es6 如何 把 map 变成数组,在把数组变成map
在ES6中,可以使用以下方式将Map转换为数组:
```
const m = new Map([["a", 1], ["b", 2], ["c", 3]]);
const arr = Array.from(m, ([key, value]) => `${key}:${value}`);
```
首先,我们使用Map构造函数创建一个Map对象,并将键值对作为参数传递。然后,我们使用Array.from()方法将Map转换为数组,第二个参数是一个回调函数,用于将每个元素转换为字符串。回调函数接收一个键值对数组作为参数,我们在这里使用解构赋值来获取键和值,并将它们拼接成一个字符串。
要将数组转换回Map,可以使用以下方式:
```
const m = new Map(arr.map(s => s.split(':')));
```
我们使用map()方法将数组中的每个字符串分割为键和值,并返回一个键值对数组。然后,我们将这个数组传递给Map构造函数,它将创建一个新的Map对象,并将其中的键值对设置为我们刚刚创建的键值对数组中的键值对。
需要注意的是,这种方法不会处理键重复的情况,如果数组中有重复的键,则后面的值会覆盖前面的值。
e6 如何 把 map 变成数组,在把数组变成map
将map转换为数组可以使用range迭代器,然后使用append()函数将每个键值对添加到数组中。例如:
```
m := map[string]int{"a": 1, "b": 2, "c": 3}
var arr []string
for k, v := range m {
arr = append(arr, k+":"+strconv.Itoa(v))
}
```
将数组转换回map,可以使用循环遍历数组,并使用strings.Split()函数将键值对分离出来,然后将它们存入map中。例如:
```
var m = make(map[string]int)
for _, pair := range arr {
kv := strings.Split(pair, ":")
key := kv[0]
val, _ := strconv.Atoi(kv[1])
m[key] = val
}
```
注意,如果数组中包含重复的键,则最后一个值将覆盖之前的值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)