C/C++、Java、Go、Python总结对比8-Map

map可以用来存储键值对,比如统计全班人的身高,采用的键值对为 人名:身高值。

c的写法

c的内置类型没有map

c++的写法

#include <map>
void mapDemo() {
    map<int, char> map1;  //初始化map
    map1.insert(map<int, char>::value_type(1, 'A'));  //添加元素
    map1.insert(map<int, char>::value_type(2, 'B'));
    map1.insert(map<int, char>::value_type(3, 'C'));
    map1.erase(1);  //删除键为1的键值对
    map<int, char>::iterator it;
    for (it = map1.begin(); it !=map1.end() ; it++) {
        cout << (*it).first << "->";  //遍历map的键值对
        cout << (*it).second << endl;
    }
}

java的写法

public static void mapDemo() {
    Map<Integer, String> map = new HashMap<>();  //声明并初始化
    map.put(1, "A");  //添加元素
    map.put(2, "B");
    map.put(3, "C");
    map.remove(1);  //删除元素
    map.get(2);  //查找键为2的元素
    map.put(3, "D");  //更改元素
    System.out.println(map.toString());
}

go的写法

import "fmt"
func mapDemo()  {
   dict := make(map[int]string)  //定义一个键为int类型,值为string类型的map
   dict[1] = "A"  //添加元素,前提是map中不存在该键
   dict[2] = "B"
   dict[3] = "C"
   delete(dict, 1)  //删除键为1的元素
   fmt.Println("dict[2]=", dict[2])
   dict[3] = "D"  //更改元素,前提是map中已存在该键
   fmt.Println(dict)
}

python的写法

def map_demo():
    map1 = {1: "A", 2: "B", 3: "C"}  # 定义map
    map1[4] = "D"  # 添加元素
    map1.pop(3)  # 删除键为3的元素
    print(map1[1])  # 查找键为1的元素
    map1[1] = "D"  # 更改键为1的值,前提是改键值对存在
    print(map1)

总结对比:

1. c没有map;

2. c++、java、go、python的写法较为类似,可以举一反三;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值