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 中 取切片元素 与 切片再生成切片的区别的更多相关文章

  1. 仙人指路,引而不发,Go lang1.18入门精炼教程,由白丁入鸿儒,Golang中New和Make函数的使用背景和区别EP16

    Golang只有二十五个系统保留关键字,二十几个系统内置函数,加起来只有五十个左右需要记住的关键字,纵观编程宇宙,无人能出其右.其中还有一些保留关键字属于"锦上添花",什么叫锦上添 ...

  2. Spring中Bean的命名问题(id和name区别)及ref和idref之间的区别

    Spring中Bean的命名 1.每个Bean可以有一个id属性,并可以根据该id在IoC容器中查找该Bean,该id属性值必须在IoC容器中唯一: 2.可以不指定id属性,只指定全限定类名,如: & ...

  3. (转)Spring中Bean的命名问题(id和name区别)及ref和idref之间的区别

    Spring中Bean的命名 1.每个Bean可以有一个id属性,并可以根据该id在IoC容器中查找该Bean,该id属性值必须在IoC容器中唯一: 2.可以不指定id属性,只指定全限定类名,如: & ...

  4. Python:列表中,增加元素、删除元素、切片、其它

    一.向列表中增加元素 list.append(单个元素):在list列表末端增加一个元素: list.extend([元素1,元素2]):在list列表末端增加多个元素: list.insert(元素 ...

  5. GO语言学习——切片三 append()方法为切片添加元素、切片的扩容策略、使用copy()函数复制切片、从切片中删除元素

    append()方法为切片添加元素 注意:通过var声明的零值切片可以在append()函数直接使用,无需初始化. var s []int s = append(s, 1, 2, 3) append( ...

  6. 使用回溯法求所有从n个元素中取m个元素的组合

    不多说了,直接上代码,代码中有注释,应该不难看懂. #include <stdlib.h> #include <stdio.h> typedef char ELE_TYPE; ...

  7. Python 中的反转字符串:reversed()、切片等

    摘要:以相反的顺序反转和处理字符串可能是编程中的一项常见任务.Python 提供了一组工具和技术,可以帮助您快速有效地执行字符串反转. 本文分享自华为云社区<Python 中的反转字符串:rev ...

  8. java中取数组第一个元素

    java中取数组第一个元素   var a=[1,2,2,3,4];console.log(a);a.shift();console.log(a);   pop:删除原数组最后一项,并返回删除元素的值 ...

  9. Golang中的Slice与数组

    1.Golang中的数组 数组是一种具有固定长度的基本数据结构,在golang中与C语言一样数组一旦创建了它的长度就不允许改变,数组的空余位置用0填补,不允许数组越界. 数组的一些基本操作: 1.创建 ...

  10. golang中的左值VS右值

    对应关系 左值 可寻址 右值 不可寻址 可寻址:可以通过&取地址符,获取内存地址; 可寻址,也就是分配了内存; 不可寻址:根本没有分配内存; 常量const 常量通常只支持数字/字符串/布尔, ...

随机推荐

  1. vue插件实现循环滚动列表——vue-seamless-scroll

    https://blog.csdn.net/weixin_45389051/article/details/106379832?utm_medium=distribute.pc_relevant.no ...

  2. KSP(坎巴拉)萌新感悟

    1.为什么降落月球等无大气星球时减速为亚轨道之后便不再减速,等到快坠落的时候在满节流阀极限减速最省燃料? 因为我们的dv是确定的,燃料能给我们带来一定量的冲量,却因此可以带来不一定量的动量,显然速度越 ...

  3. python 设计模式 开篇 第1篇

    1. 设计模式的定义 软件设计中普遍存在的 反复出现的 各种问题 所提出的解决方案 首先,什么是软件设计? 系统开发 项目开始的时候 需要做 需求分析 软件系统设计 软件建模 类的设计 接口的设计 等 ...

  4. python json.loads()、json.dumps()和json.dump()、json.load()区别

    json.loads().json.dumps()和json.dump().json.load()分别是两组不同用法 带s的用于数据类型的转换,不带s的用于操作文件. json.loads().jso ...

  5. 【RTOS】基于RTOS的嵌入式系统看门狗策略

    RTOS - high integrity systems 看门狗策略 Watchdog Strategies for RTOS enabled embedded systems 介绍 看门狗定时器就 ...

  6. 什么是 doris,为什么几乎国内大厂都会使用它

    转载至我的博客 https://www.infrastack.cn ,公众号:架构成长指南 今天给各位分享一个非常牛的实时分析型数据库Apache Doris,几乎国内的一二线大厂都在使用它做数据分析 ...

  7. [转帖]Oracle优化案例:vfs_cache_pressure和min_free_kbytes解决RMAN挂起问题

    https://www.modb.pro/db/34028 环境: Oracle 11gr2 + dataguard 512GB内存 + 128核cpu + 高性能存储服务器 uname -an Li ...

  8. [转帖]黄东旭:TiDB的优势是什么?

    https://tidb.net/book/tidb-monthly/2022/2022-07/usercase/tidb-advantage "云原生"."分布式&qu ...

  9. [转帖]FT-2000+/64 - Phytium

      https://en.wikichip.org/wiki/phytium/feiteng/ft-2000%2B-64 Edit Values FT-2000+/64 General Info De ...

  10. Find 查找并且展示最近24小时内创建的文件信息

    1. 命令为: find /gscloud/tools/patchinstall/patchfiles/ -maxdepth 1 -mtime 1 |cut -c40- >/deploy/pat ...