go语言(八)---- map

  1. map的声明方式有以下三种。
package mainimport "fmt"func main() {//第一种声明方式//声明map1是一个map类型,key是String,value是Stringvar myMap1 map[string] stringif myMap1 == nil {fmt.Println("myMap1 是一个空map")}//在使用map前,需要先用make给map分配数据空间myMap1 = make(map[string]string,10)myMap1["one"] = "java"myMap1["two"] = "c"myMap1["three"] = "python"fmt.Println("第一种方式", myMap1)//第二种声明方式myMap2 := make(map[int]string)myMap2[1] = "navy"myMap2[2] = "hj"myMap2[3] = "liu"fmt.Println("第二种方式", myMap2)//第三种声明方式myMap3 := map[string] string{"one": "php","two": "c++","three": "python",}fmt.Println("第三种方式", myMap3)
}

在这里插入图片描述

  1. map的使用方式

map的增删改查

package mainimport "fmt"func main() {cityMap :=make(map[string]string)//添加cityMap["China"] = "Beijing"cityMap["Japan"] = "Tokyo"cityMap["USA"] = "NewYork"//遍历for key,value := range cityMap  {fmt.Println("key = ",key)fmt.Println("value = ",value)}//删除delete(cityMap,"Japan")//修改cityMap["USA"] = "DC"fmt.Println("-------------")//遍历for key, value := range cityMap {fmt.Println("key = ",key)fmt.Println("value = ",value)}
}

在这里插入图片描述

  1. map的传参
package mainimport ("fmt"
)func printMap(cityMap map[string]string) {//cityMap 是一个引用传递for key, value := range cityMap{fmt.Println("key = ",key)fmt.Println("value = ",value)}
}func changeValue(cityMap map[string] string)  {cityMap["England"] = "Lodndon"
}func main() {cityMap := make(map[string]string)//添加cityMap["China"] = "Beijing"cityMap["Japan"] = "Tokyo"cityMap["USA"] = "NewYork"//遍历printMap(cityMap)//增加一个mapchangeValue(cityMap)fmt.Println("---------------")//遍历printMap(cityMap)}

在这里插入图片描述

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

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

相关文章

C++中实现多线程和分布式

3. 多线程 (2)对于 需要写入但不需要等待响应的请求,可以使用 BlockingQueue 完成,例如 log,由一个专门的线程去写入文件,其他线程只需要往 BlockingQueue 写入即可; (3&#xff0…

Datawhale 强化学习笔记(二)马尔可夫过程,DQN 算法

文章目录 参考马尔可夫过程DQN 算法(Deep Q-Network)如何用神经网络来近似 Q 函数如何用梯度下降的方式更新网络参数强化学习 vs 深度学习 提高训练稳定性的技巧经验回放目标网络 代码实战 DQN 算法进阶Double DQNDueling DQN 算法代码实战 参考 在线阅…

练习题 百亿富翁

题目 题目描述 这天小明买彩票中了百亿奖金,兴奋的他决定买下蓝桥公司旁的一排连续的楼房。 已知这排楼房一共有 N 栋,编号分别为 1∼N,第 i 栋的高度为 hi​。 好奇的小明想知道对于每栋楼,左边第一个比它高的楼房是哪个&…

【算法优选】 动态规划之简单多状态dp问题——壹

文章目录 🎋前言🎍[按摩师](https://leetcode.cn/problems/the-masseuse-lcci/)🚩题目描述🚩算法思路:🚩代码实现 🍀[打家劫舍二](https://leetcode.cn/problems/house-robber-ii/description/)…

基于LDA的评论大数据的分析及主题建模

1.微博的关键词大数据采集; 已完成,待优化 2.LDA 错误1:使用了import pyLDAvis.sklearn,提示没有模块no module named pyldavis.sklearn。 默认安装 pyLDAvis3.4.1,最后降级处理,解决方式: …

给定一个整数数组和一个整数目标值,在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。(找到一个就返回)

#第一种方法# #时间换取空间:两个循环求解# def search(nums,target):for i in nums:start nums.index(i) 1for j in nums[start: ]:if i j target:result [nums.index(i)]next_index nums[start:].index(j) startresult.append(next_index)return result …

docker ps -a 要求只显示自己想要的信息

在使用 docker ps -a 要求只显示这下面这几个字段,不显示其他的内容,方便查看哪些容器在运行,那些已经挂起。 例子: 我只想想显示这几个字段: CONTAINER ID STATUS NAMES docker ps -a --format "table {{.ID}…

EasyX图形化学习(三)

1.帧率: 即每秒钟界面刷新次数,下面以60帧为例: 1.数据类型 clock_t: 用来保存时间的数据类型。 2.clock( ) 函数: 用于返回程序运行的时间,无需参数。 3.例子: 先定义所需帧率: const …

20230118-【UNITY 学习】增加攀登系统

替换脚本PlayerMovement_04.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerMovement_05 : MonoBehaviour {private float moveSpeed; // 玩家移动速度public float walkSpeed 7; // 行走速度public float sprintSpee…

[笔记]深度学习入门 基于Python的理论与实现(一)

代码仓库 gitee 1. python 入门 1.5之前是python安装和基础语法, 我直接跳过了 1.5 Numpy 深度学习中经常出现数组和矩阵运算,Numpy 的数组类 numpy.array 提供了很多便捷的方法 1.5.1 导入 Numpy import numpy as np1.5.2 生成 Numpy 数组 np.array()&#xf…

C++ 设计模式之策略模式

【声明】本题目来源于卡码网(题目页面 (kamacoder.com)) 【提示:如果不想看文字介绍,可以直接跳转到C编码部分】 【设计模式大纲】 【简介】什么是策略模式(第14种模式) 策略模式是⼀种⾏为型设计模式&…

西门子WINCC常用C脚本1

1.置位,复位,取反 获取变量值:GetTagBit(可以是位也可以是字节,字,双字等具体字母不同) 设置变量值:SetTagBit 置位:SetTagBit("变量名",1) 复位&#xff…

Node+Express编写接口---前端

前端页面 vue_node_admin: 第一个以node后端,vue为前端的后台管理项目https://gitee.com/ah-ah-bao/vue_node_admin.git

java-log4j日志冲突解决

一、概述 java日志框架较多&#xff0c;其中主流的slf4j和commons-logging是日志接口&#xff0c;log4j、log4j2和logback是真正的日志实现库。 二、具体库单独使用 2.1 log4j <dependency><groupId>log4j</groupId><artifactId>log4j</artifa…

Ceph分布式存储(1)

目录 一.ceph分布式存储 Ceph架构&#xff08;自上往下&#xff09; OSD的存储引擎&#xff1a; Ceph的存储过程&#xff1a; 二. 基于 ceph-deploy 部署 Ceph 集群 20-40节点上添加3块硬盘&#xff0c;一个网卡&#xff1a; 10节点为admin&#xff0c;20-40为node&…

指针理解C部分

目录 1.二级指针 2.指针数组 2.1指针数组的定义和表现形式 2.2指针数组模拟实现二维数组 2.2.1二维数组 2.2.2使用指针数组模拟实现二维数组 3.字符指针 2.数组指针 3.二维数组传参 4.函数指针 4.1函数指针变量的定义和创建 4.2函数指针变量的使用 4.3两段有趣的代码 4.…

Python自动化测试中APScheduler Flask的应用示例

使用背景 实际项目中&#xff0c;需要验证打点数据在各个系统中收集是否一致&#xff0c;而部分节点打点数据收集是通过异步任务实现的&#xff0c;等待时间比较久。为应对业务异步操作处理&#xff0c;实现异步数据的收集&#xff0c;经过调研后&#xff0c;选择了 APSchedule…

ASOP的电池设置

fuelgauge 中文直译为“油量表”。在Android中&#xff0c;通常是与电池电量相关的模块&#xff0c;主要是负责显示设备的电池状态信息。 BatteryManager 路径在android/os下&#xff0c;提供了与系统电池服务交互的api&#xff0c;用于获取实时电池状态信息&#xff0c;包含…

JMeter实操入门之登录

JMeter实操入门之登录 前言初级-无变量的登录线程组取样器-HTTP请求 进阶-定义变量的登录用户定义的变量获取JSON返回的数据-tokentoken设置全局变量 前言 安装及环境配置教程可移步&#xff1a;JMeter安装与配置环境 本篇文章针对小白进一步的认识及运用JMeter&#xff0c;围绕…

【一天一个算法】---时间轮算法

简介 时间轮算法&#xff08;Timing Wheel Algorithm&#xff09;是一种用于处理定时任务的算法。它的原理是使用固定大小的时间轮&#xff0c;将时间划分成一系列的时间槽&#xff08;time slot&#xff09;&#xff0c;每个时间槽表示一个时间间隔。每个时间槽关联一个任务列…