go语言day06 数组 切片

news2024/11/23 21:40:33

数组 :

定长且元素类型一致,在索引逻辑上连续存储,数组的内存地址是存储的第一个元素的内存地址

        几种创建方式:

                仅声明

                        var nums [ 3 ] int

                声明并赋值

                        var nums = [ 2 ] string {"武沛齐","alex"}

                声明并按下标赋值

                        var nums = [ 3 ] int {0:88,2:1 }

                省略长度,自动补充长度

                         var nums = [ ... ] string{"武沛齐","alex"}

      特殊的数组:字符串类型数组

        1)字符串数组本身并不保存字符串值

       2) 数组中存储的是指针和长度,用于存储字符串的实际地址和字节长度.

               并且指针和长度的内存大小都为8个字节。

        字符串类型数组的拷贝

                地址发生改变

 数组的循环for range关键字

切片:

        可以看作动态数组,创建  不用指定长度的  可指定容量的   可变数组。

在go1.14版本中当存储元素个数超过当前容量时,容量自动扩容为2倍。(容量>1024时,每次扩容增加1/4)

        创建切片:

                var nums  [ ] int

                data :=  [ ] int{ }

                users := make ([ ] int ,2 ,5) 

                             make关键字仅用于切片,字典,channel

        切片扩容机制:

        v1 := make([ ] int ,1,3)

        v2 := append( v1 , 66)

        

        不触发扩容时,v1  v2为同一个内存地址

                扩容后,v1 v2引用不同的内存地址

          切片的扩容问题:

         切片的拼接方法:

v1 := []int{11,22,33}
v2 :=append(v1,44) //创建新内存地址 追加44
v3 := v1[1:3] //从1到2
v4 := v1[2:]  //从2到结尾  
v5 := v1[:3]  //从开头到2  
v1 := []int {11,22,33,44,55,66}

result := append(v1[:2],v1[3:]...)

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

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

相关文章

机器人控制系列教程之运动规划(2)

简介 在笛卡尔坐标空间中轨迹规划时,首先用位置矢量和旋转矩阵表示所有相应的机器人节点,其次在所有路径段插值计算相对的位置矢量和旋转矩阵,依次得出笛卡尔坐标空间中的轨迹序列通过求解运动学逆问题得到相应关节位置参数。 优点&#xf…

绘制图形

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在前3节的实例中,我们一直绘制的都是直线,实际上,海龟绘图还可以绘制其他形状的图形,如圆形、多边形等…

通过frp实现内外网映射

frp介绍和使用方法可以参考官网:安装 | frp 1、准备两台服务器,一台内网服务器A,一台有公网ip的外网服务器B(47.12.13.15) 2、去官方仓库下载frp安装包:Releases fatedier/frp GitHub 下载包根据自己服务系统选择 ​ 3、先在外网服务器…

类的默认成员函数——拷贝构造函数

1.概念引入 在现实生活中,如果有两个兄弟长得一模一样,我们就称其为双胞胎 当我们创建了一个新的对象,需要用同类型的对象拷贝并初始化,就要用到拷贝构造函数 拷贝构造函数:只有单个形参,该形参是对本类类…

2024 年 8 款最佳建筑 3D 渲染软件

你现在使用的3D 渲染软件真得适合你吗? 在建筑和室内渲染当中,市面上有许多3D渲染软件可供选择。然而,并不是每款软件都适合你的需求。本指南将重点介绍2024年精选的8款最佳建筑3D渲染软件,帮助你了解不同的选项,并选…

STM32的SPI通信

1 SPI协议简介 SPI(Serial Peripheral Interface)协议是由摩托罗拉公司提出的通信协议,即串行外围设备接口,是一种高速全双工的通信总线。它被广泛地使用在ADC、LCD等设备与MCU间,使用于对通信速率要求较高的场合。 …

基于Java的宠物领养管理系统【附源码】

摘 要 近些年来,随着科技的飞速发展,互联网的普及逐渐延伸到各行各业中,给人们生活带来了十分的便利,宠物管理系统利用计算机网络实现信息化管理,使整个宠物领养的发展和服务水平有显著提升。 本文拟采用IDEA开发工具…

Live Wallpaper Themes 4K Pro for Mac v19.9 超高清4K动态壁纸

Live Wallpaper & Themes 4K Pro for Mac v19.7 是一款专为Mac用户设计的超高清4K动态壁纸应用程序。它凭借出色的视觉效果和丰富的个性化设置,为用户带来全新的桌面体验。 这款软件提供了大量精美的动态壁纸供用户选择,涵盖了各种风格和主题&#…

考个嵌入式中级证书吧,有大用!

随着物联网、人工智能的蓬勃发展,嵌入式行业迎来了前所未有的发展机遇:物联网的万物互联需求,为嵌入式系统开拓了广阔的应用场景;人工智能的融入促使嵌入式设备向更智能、更自主的方向进化。然而,行业的火爆&#xff0…

都2024年了,现在互联网行情怎样?

都2024年了,互联网行情是怎样的? 很直白的说,依旧是差得很,怎么说? 我刚在掘金上看到一个掘友写的文章,他是四月领了大礼包,据他的描述如下: 互联网行情依旧是差得很,很…

通过迭代器删除容器中的元素

通过之前的介绍我们知道通过迭代器来遍历单例集合的操作仍然需要借助于循环结构。而且我们知道在单例集合中调用iterator方法返回的Iterator对象中还有一个remove方法我们没有介绍,它的作用是删除容器中的元素。说道这里应该有人会发现一个很明显的问题,…

第28课 绘制原理图——绘制导线

概述 放置完元器件之后,接着就要用导线将元器件的管脚一个一个连起来了。 绘制导线的方法 点击快速工具条上的“线”命令,进入绘制导线的过程。 点击选择某个管脚或电源端口,作为导线的起始端。 再点击选择另一个管脚或电源端口&#xff0c…

MT6989(天玑9300)芯片性能参数_MTK联发科5G处理器

MT6989是联发科Dimensity旗舰系列的成员,旨在为旗舰5G智能手机供应商提供最先进的技术和性能。MT6989也是联发科目前最具创新和强大的5G智能手机芯片,具有领先的功耗效率,无与伦比的计算架构,有史以来最快和最稳定的5G调制解调器&…

动物常见图像的图像分类数据集

常见动物图像分类数据集 数据集: 链接:https://pan.baidu.com/s/1zZnCUZuNlX6MjuZImlDjTw?pwd03b9 提取码:03b9 数据集信息介绍: 文件夹 大象 中的图片数量: 1446 文件夹 松鼠 中的图片数量: 1862 文件夹 河马 中的图片数量:…

YOLOv8/v10项目使用教程

根据改好的YOLOv8.yaml改yolov10.yaml教程 打开ultralytics/cfg/models/v8路径,找到需要移植的yaml文件,从其中复制相关的模块。打开一个YOLOv10的yaml文件。 注释掉之前相应位置的模块,并粘贴上面复制的模块,完成。 其余使用步骤…

upload-labs第14关

upload-labs第14关 第十四关一、源代码分析代码审计 二、绕过分析a. 制作图片码首先需要一个照片,然后其次需要一个eval.php。 b.上传图片码上传成功 c.结合文件包含漏洞进行访问访问:http://192.168.1.110/upload-labs-master/include.php?filehttp://…

SNEC天合储能秀:全球首发多元场景一站式工商业储能融合解决方案

6月13日-15日,SNEC2024光伏与智慧能源展在上海隆重举行,来自全球95个国家和地区3000家国内外展商齐聚展会,5000行业专家共话产业发展。致力于成为全球光储智慧能源解决方案的领导者,天合光能(展位号:7.2H-E…

LiveMedia视频汇聚平台的设备管理功能

LiveMedia视频汇聚平台的设备管理功能是实现视频资源有效管理和控制的关键组成部分。以下是设备管理功能的详细介绍: 设备接入与管理: 设备添加与编辑:平台支持添加、编辑与删除设备,可编辑的信息包括设备接入的协议类型、服务节…

ICASSP论文结构研究

MLCA-AVSR 基于多层交叉注意融合的视听语音识别 ABSTRACT 目标任务现状、目前研究现状(研究大方向、研究的欠缺)、本文方法、方法效果(排名、分数) 有一个Index Terms INTRODUCTION 目标任务的简单发展历程与发展现状,目前任务的难点,指出为什么会…

代码随想录-Day39

62. 不同路径 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径&…