golang 中 取切片元素 与 切片再生成切片的区别
func main() {
//定义一个切片
a := []byte{1, 2, 3}
fmt.Printf("a的类型%T\n", a) //a的类型[]uint8
fmt.Printf("a原来的值%v\n", a) //a原来的值[1 2 3]
//这样[0]没有冒号的情况下,是取切片中的某一个元素的值,就是把切片中某个元素的值复制一份赋值给b
b := a[0]
b >>= 1 //修改b的值,并不会影响切片a底层对应的数组元素的值
fmt.Printf("b的类型%T\n", b) //b的类型uint8
fmt.Printf("a现在的值%v\n", a) //a现在的值[1 2 3]
//利用切片a再次生成一个切片,这个切片里只有一个元素,切片是一个指针不能进行移位操作
c := a[:1]
c[0] >>= 1 //在这里对c切片的第一个元素(就是一个byte)进行移位操作,会影响到a
fmt.Printf("c的类型%T\n", c) //c的类型[]uint8
fmt.Printf("c的值%v\n", c) //c的值[0]
fmt.Printf("a后来的值:%v\n", a) //a后来的值:[0 2 3]
}

golang 中 取切片元素 与 切片再生成切片的区别的更多相关文章
- 仙人指路,引而不发,Go lang1.18入门精炼教程,由白丁入鸿儒,Golang中New和Make函数的使用背景和区别EP16
Golang只有二十五个系统保留关键字,二十几个系统内置函数,加起来只有五十个左右需要记住的关键字,纵观编程宇宙,无人能出其右.其中还有一些保留关键字属于"锦上添花",什么叫锦上添 ...
- Spring中Bean的命名问题(id和name区别)及ref和idref之间的区别
Spring中Bean的命名 1.每个Bean可以有一个id属性,并可以根据该id在IoC容器中查找该Bean,该id属性值必须在IoC容器中唯一: 2.可以不指定id属性,只指定全限定类名,如: & ...
- (转)Spring中Bean的命名问题(id和name区别)及ref和idref之间的区别
Spring中Bean的命名 1.每个Bean可以有一个id属性,并可以根据该id在IoC容器中查找该Bean,该id属性值必须在IoC容器中唯一: 2.可以不指定id属性,只指定全限定类名,如: & ...
- Python:列表中,增加元素、删除元素、切片、其它
一.向列表中增加元素 list.append(单个元素):在list列表末端增加一个元素: list.extend([元素1,元素2]):在list列表末端增加多个元素: list.insert(元素 ...
- GO语言学习——切片三 append()方法为切片添加元素、切片的扩容策略、使用copy()函数复制切片、从切片中删除元素
append()方法为切片添加元素 注意:通过var声明的零值切片可以在append()函数直接使用,无需初始化. var s []int s = append(s, 1, 2, 3) append( ...
- 使用回溯法求所有从n个元素中取m个元素的组合
不多说了,直接上代码,代码中有注释,应该不难看懂. #include <stdlib.h> #include <stdio.h> typedef char ELE_TYPE; ...
- Python 中的反转字符串:reversed()、切片等
摘要:以相反的顺序反转和处理字符串可能是编程中的一项常见任务.Python 提供了一组工具和技术,可以帮助您快速有效地执行字符串反转. 本文分享自华为云社区<Python 中的反转字符串:rev ...
- java中取数组第一个元素
java中取数组第一个元素 var a=[1,2,2,3,4];console.log(a);a.shift();console.log(a); pop:删除原数组最后一项,并返回删除元素的值 ...
- Golang中的Slice与数组
1.Golang中的数组 数组是一种具有固定长度的基本数据结构,在golang中与C语言一样数组一旦创建了它的长度就不允许改变,数组的空余位置用0填补,不允许数组越界. 数组的一些基本操作: 1.创建 ...
- golang中的左值VS右值
对应关系 左值 可寻址 右值 不可寻址 可寻址:可以通过&取地址符,获取内存地址; 可寻址,也就是分配了内存; 不可寻址:根本没有分配内存; 常量const 常量通常只支持数字/字符串/布尔, ...
随机推荐
- kafka 在 zookeeper 中保存的数据内容
转载请注明出处: 1. 服务器上下载 kafka : wget https://archive.apache.org/dist/kafka/2.4.0/kafka_2.12-3.2.0.tgz 2. ...
- zipkin 与 sleuth 实现链路追踪
本文为博主原创,转载请注明出处 1.Zipkin 与 Sleuth 简介 zipkin 的官网地址: https://zipkin.io/ Zipkin 和 Sleuth 都是由 Twitter 开源 ...
- asp.net core之Kestrel
简介 在ASP.NET Core中,Kestrel是一个重要的组件,它是一个跨平台的.开源的Web服务器,专门为ASP.NET Core应用程序而设计.Kestrel以其轻量级和高性能而闻名,本文将介 ...
- Python Code_05位运算
coding:utf-8 author : 写bug的盼盼 development time : 2021/8/28 7:16 print(4&8)#非1即0 print(4|2)#同0即0, ...
- [转帖]OceanBase实验4:迁移MySQL数据到OceanBase集群
服务器环境 1)12核48G,操作系统为centos 7.9系统,单节点三副本1-1-1集群. 2)源MySQL数据库:与OceanBase同一台服务器,版本为MySQL 5.7. 1.使用 mysq ...
- Kafka的部分初始化参数的学习与整理
Kafka的部分初始化参数的学习与整理 背景 前段时间跟同事一起处理过kafka的topic offset的retention 时间与 log 的retention时间不一致. 导致消息还有, 但是o ...
- [转帖]Kafka的Topic配置详解
https://www.jianshu.com/p/c9a54a587f0e 一.Kafka中topic级别配置 配置topic级别参数时,相同(参数)属性topic级别会覆盖全局的,否则默认为全局配 ...
- [转帖]VMware常用软件ISO下载汇总(2023年6月更新)
https://www.dinghui.org/vmware-iso-download.html#vcsa-patch 请访问 www.dinghui.org 获得最新版,文章将持续更新.[最后更新时 ...
- 【转帖】用pycharm开发django项目示例
https://www.cnblogs.com/kylinlin/p/5184592.html pycharm开发django工程(一) 在pycharm(企业版)中新建Django工程,注意使用虚拟 ...
- Oracle使用临时表与直接关联的性能比较
Oracle使用临时表与直接关联的性能比较 摘要 自己的数据库水平还是太low了. 之前有很多店理解过. 但是一直理解的不深入. 比如我们这边有很多使用临时表存储中间结果数据 然后对结果数据进行关联查 ...