Go切片的操作
package main import "fmt" //切片的操作 func main() { //创建slice
var s []int //zero value for slice is nil for i := ; i < ; i++ {
s = append(s, * i + )
}
fmt.Println(s) //[1 3 5 7 9 11 13 15 17 19] s1 := []int{, , , }
fmt.Println(s1) //[2 4 6 8]
fmt.Printf("cap:%d\n", cap(s1)) //cap:4 s2 := make( []int, )
fmt.Println(s2) //[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
fmt.Printf("cap:%d\n", cap(s2)) //cap:16 s3 := make( []int, , ) //32设置的是cap值
fmt.Println(s3) //[0 0 0 0 0 0 0 0 0 0]
fmt.Printf("cap:%d\n", cap(s3)) //cap:32 //复制slice
copy(s2, s1)
fmt.Println(s2,len(s2), cap(s2)) //[2 4 6 8 0 0 0 0 0 0 0 0 0 0 0 0] 16 16 //删除slice中的元素
s2 = append( s2[:], s2[:]...)
fmt.Println(s2, len(s2), cap(s2)) //[2 4 6 0 0 0 0 0 0 0 0 0 0 0 0] 15 16 front := s2[]
s2 = s2[:]
fmt.Println(front) //
fmt.Println(s2, len(s2), cap(s2)) //[4 6 0 0 0 0 0 0 0 0 0 0 0 0] 14 15 tail := s2[len(s2) - ]
s2 = s2[: len(s2) - ]
fmt.Println(tail) //
fmt.Println(s2, len(s2), cap(s2)) //[4 6 0 0 0 0 0 0 0 0 0 0 0] 13 15 }
Go切片的操作的更多相关文章
- python-类对象以列表切片模式操作
#类对象以列表切片模式操作 class Person: def __init__(self): self.cache=[] def __setitem__(self, key, value): #修改 ...
- python基础之列表以及切片等操作
列表 定义: 能装对象的对象,列表能放大量的数据,各种类型,且列表内的数据是可以修改保存的,常用 [ ] 去表示,每一项数据之间用逗号隔开 1.列表的索引与切片 1.1 索引 与字符串的索引几乎一致, ...
- python基础之字符串以及切片等操作
1.字符类型 1.整型 int 2. str 字符串 3.bool 布尔值 4.list 表格,常用于大量数据的存储 用[ ]表示 5.tuple 元祖 ,不能发生改变()表示 6.dict 字 ...
- 【玩转Golang】slice切片的操作——切片的追加、删除、插入等
一.一般操作 1,声明变量,go自动初始化为nil,长度:0,地址:0,nil func main(){ var ss []string; fmt.Printf("length:%v \ta ...
- Python序列的切片操作与技巧
切片操作 对于具有序列结构的数据来说,切片操作的方法是:consequence[start_index: end_index: step]. start_index: 表示是第一个元素对象,正索引位置 ...
- python学习之“切片操作从入门到精通”
在python学习开发的过程中,我们总是不断的要对List(列表),Tuple(元组)有取值操作:假如我们有一个列表List1现在想取出1其中的前5个元素,改怎么操作呢? >>> L ...
- 【Python实践-4】切片操作去除字符串首尾的空格
#利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法 def trim(s): while s[0:1]==' ': s=s[1:] while s[ ...
- Python中的切片操作
python中的切片操作功能十分强大,通常我们利用切片来进行提取信息,进行相关的操作,下面就是一些切片的列子. 列如我们从range函数1-100中取7的倍数,函数及结果如下所示: >>& ...
- Python字符串切片操作知识详解
Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...
随机推荐
- 分享一个实用任意路数PWM函数
一.什么是PWM? 1.科普一下什么是PWM,嘿嘿,莫闲啰嗦,好好看看,可能大多数人听过,但可能没详细了解过,至此不妨花费几分钟,详细了解哈,PWM中文译名为:脉冲宽度调制,即控制电路在输出频率不变的 ...
- redirect与forward的区别
文件名称:forward.jsp <html> <head><title> 跳转 </title> </head> <body> ...
- 动手实现 Redux(四):共享结构的对象提高性能
接下来两节某些地方可能会稍微有一点点抽象,但是我会尽可能用简单的方式进行讲解.如果你觉得理解起来有点困难,可以把这几节多读多理解几遍,其实我们一路走来都是符合“逻辑”的,都是发现问题.思考问题.优化代 ...
- 【C#】什么时候使用virtual什么时候使用abstract,(另附override/new区别)
一.C#中virtual与abstract的区别(引用“姓吕名布字子乔”的文章) C#的virtual & abstract经常让人混淆,这两个限定词都是为了让子类进行重新定义,覆盖父类的定义 ...
- 自动创建xml文档
自动创建xml文档 import xml.etree.ElementTree as ET print(dir(ET)) #ET里面有Element方法 root = ET.Element(" ...
- PKU_campus_2017_K Lying Island
思路: 题目链接http://poj.openjudge.cn/practice/C17K/ 状压dp.dp[i][j]表示第i - k人到第i人的状态为j的情况下前i人中最多有多少好人. 实现: # ...
- [Redis] 基于redis的分布式锁
前言分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁. 可靠性首先,为了确保 ...
- html5shiv.js让吃屎的IE6、IE7、IE8支持html5去吧
插件介绍 用于解决IE9以下版本浏览器对HTML5新增标签不识别,并导致CSS不起作用的问题.所以我们在使用过程中,想要让低版本的浏览器,即IE9以下的浏览器支持,那么这款html5shiv.js是一 ...
- 封装addClass 、 removeClass
<script> window.onload = function() { var oDiv = document.getElementById('div1'); var oDiv2 = ...
- c++调用com口操作autocad
#include "stdafx.h" #include <atlcomcli.h> #import "D:\\C++test\\FirstCom\\Rele ...