10.Golang中的map

news2024/9/30 13:31:58

目录

  • 概述
  • map实践
    • map声明
      • 代码
    • map使用
      • 代码
  • 结束

概述

map实践

map声明

代码

package main

import (
	"fmt"
)

func main() {
	// 声明方式1
	var map1 map[string]string

	if map1 == nil {
		fmt.Println("map1为空")
	}
	// 没有分配空间,是不能使用的
	// map1["one"] = "java"
	// 在使用map前,需要先用make给map分配数据空间
	map1 = make(map[string]string, 10)
	map1["one"] = "java"
	map1["two"] = "c"
	fmt.Println(map1)

	// 第二种声明
	map2 := make(map[int]string)
	map2[1] = "java"
	map2[2] = "c"
	fmt.Println(map2)

	// 第三种
	map3 := map[string]string{
		"one": "php",
		"two": "java",
	}
	fmt.Println(map3)
}

结果如下:
在这里插入图片描述

map使用

代码

map 常用的使用方式,如下代码所示

package main

import "fmt"

func printMap(cityMap map[string]string) {
	// 引用传递
	cityMap["usa"] = "再改"
}

func main() {
	cityMap := make(map[string]string)
	// 添加
	cityMap["china"] = "beijing"
	cityMap["usa"] = "newyork"
	cityMap["japan"] = "tokyo"
	// 遍历
	for key, v := range cityMap {
		fmt.Printf("key = %s ,value = %s \n", key, v)
	}
	fmt.Println("------------")
	// 删除
	delete(cityMap, "japan")
	// 遍历
	for key, v := range cityMap {
		fmt.Printf("key = %s ,value = %s \n", key, v)
	}
	fmt.Println("------------")
	// 修改
	cityMap["usa"] = "usa"
	for key, v := range cityMap {
		fmt.Printf("key = %s ,value = %s \n", key, v)
	}

	fmt.Println("------------")

	printMap(cityMap)

	for key, v := range cityMap {
		fmt.Printf("key = %s ,value = %s \n", key, v)
	}
}

结果如下:
在这里插入图片描述

结束

Golang中的map 至此就结束了,如有疑问,欢迎评论区留言。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1413589.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于在微信小程序中使用taro + react-hook后销毁函数无法执行的问题

问题: 在 taro中使用navigageTo() 跳转路由后hook中useEffect 的return函数没有执行 没有执行return函数 框架版本: tarojs: 3.6 react: 18.0 原因: 使用navigateTo() 跳转路由的话并不会销毁页面和组件,会加入一…

携程开源 基于真实请求与数据的流量回放测试平台、自动化接口测试平台AREX

携程开源 基于真实请求与数据的流量回放测试平台、自动化接口测试平台AREX 官网文档 基于真实请求与数据的流量回放测试平台、自动化接口测试平台AREX 这篇文章稍稍水一下,主要讲下部署过程里踩的坑,因为部署的过程主要是运维同学去处理了,我…

【Java与网络3】Java网络编程之初体验

我们平时极少使用Java来直接写网络通信相关的程序,一般都使用Tomcat Web服务或者Netty等框架来帮助我们做,不过呢,要想将技术学到家,我们研究一下基本的网络编程还是非常必要的,这样可以让我们将很多内容融会贯通&…

把批量M3U8网络视频地址转为MP4视频

在数字媒体时代,视频格式的转换已成为一项常见的需求。尤其对于那些经常处理网络视频的用户来说,将M3U8格式的视频转换为更常见的MP4格式是一项必备技能。幸运的是,现在有了固乔剪辑助手这款强大的工具,这一过程变得异常简单。下面…

单片机学习笔记---矩阵键盘

目录 矩阵键盘的介绍 独立按键和矩阵按键的相同之处: 矩阵按键的扫描 代码演示 代码模块化移植 Keil自定义模板步骤: 代码编写 矩阵键盘就是开发板上右下角的这个模块 这一节的代码是基于上一节讲的LCD1602液晶显示屏驱动代码进行的 矩阵键盘的介…

大数据学习之Flink算子、了解(Source)源算子(基础篇二)

Source源算子(基础篇二) 目录 Source源算子(基础篇二) 二、源算子(source) 1. 准备工作 2.从集合中读取数据 可以使用代码中的fromCollection()方法直接读取列表 也可以使用代码中的fromElements()方…

用户密码网络传输、保存方案分析

大华 1、大华19年的IPC,登录认证接口有两次,第一次请求算法所需数据,第二次传输摘要值,看样子是私有算法。 2、添加用户传输用户密码等敏感数据时,使用"RPAC-256"算法,应该是大华内部的私有算法。…

【从零到一】跑通CATR(二):在并行超算云上使用Cifar-10进行测试

从零到一配环境篇 由于今年要展开大量的编程工作,实验室在用的云计算平台是并行超算云,因此打算在寒假期间先熟悉一下超算云的环境,并从配套的文档和网上的教程开始,从零到一先跑通一个用于音视频分割的模型CATR。 以blog的形式…

docker-compose部署单机ES+Kibana

记录部署的操作步骤 准备工作编写docker-compose.yml启动服务验证部署结果 本次elasticsearch和kibana版本为8.2.2 使用环境:centos7.9 本次记录还包括:安装elasticsearch中文分词插件和拼音分词插件 准备工作 1、创建目录和填写配置 mkdir /home/es/s…

Vue3中的ref和shallowRef、reactive和shallowReactive

一:ref、reactive简介 ref和reactive是Vue3中定义响应式数据的一种方式。ref通常用来定义基础类型数据。reactive通常用来定义复杂类型数据。 二、shallowRef、shallowReactive简介 shallowRef和shallowReactive是Vue3中定义浅层次响应式数据的方式 三、Api使用对比…

【寒假每日一题·2024】AcWing 5307. 小苹果(补)

文章目录 一、题目1、原题链接2、题目描述 二、解题报告1、思路分析2、时间复杂度3、代码详解 三、知识风暴 一、题目 1、原题链接 5307. 小苹果 2、题目描述 二、解题报告 1、思路分析 思路参考y总:y总讲解视频 (1)根据题目可以分析出&…

中小型企业机房设计部署方案

我对接参与过至少十几个分公司和总部的机房设计,结合十几年实际工作管理经验,归纳设计了以下这个机房方案,这个机房最大化利用了空间的同时,最大化设计了各方面的冗余。 机房包含了UPS隔离,噪音隔离,功率冗…

SpringBoot之分页查询的使用

背景 在业务中我们在前端总是需要展示数据,将后端得到的数据进行分页处理,通过pagehelper实现动态的分页查询,将查询页数和分页数通过前端发送到后端,后端使用pagehelper,底层是封装threadlocal得到页数和分页数并动态…

2. MySQL 多实例

重点: MySQL 的 三种安装方式:包安装,二进制安装,源码编译安装。 MySQL 的 基本使用 MySQL 多实例 DDLcreate alter drop DML insert update delete DQL select 2.5)通用 二进制格式安装 MySQL 2.5.1&#xff…

深入理解ZooKeeper分布式锁

第1章:引言 分布式系统,简单来说,就是由多台计算机通过网络相连,共同完成任务的系统。想象一下,咱们平时上网浏览网页、看视频,背后其实都是一大堆服务器在协同工作。这些服务器之间需要协调一致&#xff…

拥有大规模犯罪联盟链的网络攻击中心

VexTrio 是一个网络犯罪集团,其历史至少可以追溯到 2017 年,该集团涉嫌利用复杂的字典域生成算法 (DDGA) 进行邪恶活动。 他们的恶意活动包括诈骗、风险软件、间谍软件、广告软件、隐匿垃圾程序 (PUP) 和露骨内容,其中 2022 年发生的一次引…

【广度优先搜索】【拓扑排序】【C++算法】913. 猫和老鼠

作者推荐 【动态规划】【map】【C算法】1289. 下降路径最小和 II 本文涉及知识点 广度优先搜索 拓扑排序 逆推 LeetCode913. 猫和老鼠 两位玩家分别扮演猫和老鼠,在一张 无向 图上进行游戏,两人轮流行动。 图的形式是:graph[a] 是一个列…

067:Vue2 + vite 开发环境的搭建(含源文件包,运行即可)

第067个 查看专栏目录: VUE 专栏目标 在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。 提供vue2的一些基本操作:安装、引用,模板使用,computed,watch&am…

【机组】单元模块实验的综合调试与驻机键盘和液晶显示器的使用方式

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《机组 | 模块单元实验》⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。 目录 1. 综合实验的调试 1.1 实验…

YOLOv8改进 | Conv篇 | 结合Dual思想利用HetConv创新一种全新轻量化结构CSPHet(参数量下降70W)

一、本文介绍 本文给大家带来的改进机制是我结合Dual的思想利用HetConv提出一种全新的结构CSPHet,我们将其用于替换我们的C2f结构,可以将参数降低越75W,GFLOPs降低至6.6GFLOPs,同时本文结构为我独家创新,全网无第二份,非常适合用于发表论文,该结构非常灵活,利用Dual卷…