Go语言的切片slice基本操作

感觉比数组好用,首选。

package main

import (
	"fmt"

)

//main is the entry of the program
func main() {
	slice1 := make([]string, 5)
	slice2 := make([]int, 3, 5)
	slice3 := []string{"Red", "Blue", "Green"}
	slice4 := []int{10, 20, 30}
	slice4[1] = 1000
	slice5 := []string{9: ""}
	var slice6 []int

	slice7 := []int{10, 20, 30, 40, 50}

	newSlice := slice7[1:3]
	newSlice[1] = 35

	newSlice = append(newSlice, 60)
	newSlice = append(newSlice, 50)
	source := []string{"Apple", "Orange", "Plum", "Banana", "Grape"}
	slice8 := source[2:3:4]
	for index, value := range source {
		fmt.Printf("Index: %d Value: %s\n", index, value)
	}

	for index :=2; index < len(source); index++ {
		fmt.Printf("Index: %d Value: %s\n", index, source[index])
	}

	slice9 := [][]int{{10}, {100, 200}}

	slice9[0] = append(slice9[0], 20)

	fmt.Println(slice1, slice2, slice3, slice4, slice5, slice6, slice7, newSlice, slice8, slice9)
}

  

时间: 2025-01-08 04:26:58

Go语言的切片slice基本操作的相关文章

【Go语言】【7】GO语言的切片

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://qingkechina.blog.51cto.com/5552198/1616987 如果说GO语言的数组为静态长度的数组,那么切片(slice)则为动态长度的数组 一.基于数组创建切片 1.存在一个整型数组intArr := [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10},那么下面的slice就是数组切片 var slice []int = int

JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)_javascript技巧

POP 删除最后一项 删除最后一项,并返回删除元素的值:如果数组为空则返回undefine var a = [1,2,3,4,5]; a.pop();//a:[1, 2, 3, 4] a.pop();//a:[1, 2, 3] a.pop();//a:[1, 2] shift 删除第一项 删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefine var a = [1,2,3,4,5]; a.shift(); //a:[2,3,4,5] a.shift(); //a:[3, 4,

深入解析Go语言编程中slice切片结构_Golang

数组转换成切片 复制代码 代码如下: a := [10]int{} fmt.Println(a)  s1 := a[:10]  //取前10个元素 [5:]取 5-最后的元素  fmt.Println(s1) slice测试 复制代码 代码如下: a := []byte{'a', 'b', 'c', 'd', 'e', 'f', 'h'} sa := a[2:5] fmt.Println(string(sa)) sd1 := a[3:5] fmt.Println(string(sd1)) //看

c语言栈-栈的基本操作输入输出

问题描述 栈的基本操作输入输出 大神们帮忙看看哪儿出问题了,关于栈的基本操作能不能写个代码使得数据从栈底到栈顶的输出 解决方案 代码呢?遍历一次就输出了,具体看你栈的存储结构,有顺序栈.链栈-- 解决方案二: 栈的特点是 先进后出.也就是说 先输出的 是 栈顶元素 而且你没附上代码,不知道怎么帮你看 解决方案三: 栈的基本特点是从顶出,如果可以请使用两个栈:先出栈.压入另一个空栈,再对这个栈出栈就是你想要的效果. 解决方案四: 其实呢你在定义栈的时候是按照一般定义进行的,也就是存在一个栈顶的变量

C语言实现顺序表基本操作汇总_C 语言

本文汇总了C语言下实现及操作顺序表的方法,对于学习数据结构的朋友来说是一个不错的参考程序.完整代码如下: #include<stdio.h> #include<stdlib.h> #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define OVERFLOW -2 #define LIST_INIT_SIZE 100 #define LISTINCREMENT 10 typedef int status ;

Go语言map映射的基本操作

对比python, java都有对应的字典类型及哈希类型. package main import ( "fmt" ) //main is the entry of the program func main() { dict1 := make(map[string]int) dict2 := map[string]string{"Red": "#da1337", "Orange": "#e95a22"}

GO语言数组和切片实例详解_Golang

本文实例讲述了GO语言数组和切片的用法.分享给大家供大家参考.具体分析如下: 一.数组 与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. (1)数组的创建. 数组有3种创建方式:[length]Type .[N]Type{value1, value2, ... , valueN}.[...]Type{value1, value2, ... , valueN} 如下: 复制代码 代码如下: func test5() {     var iarray1 [5]int32    

C语言对栈的实现基本操作_C 语言

c语言中栈是一种数据结构,后进先出,即最后进入栈的数据最先弹出.c语言中没有栈这种数据类型,需要自己编程构建.下面我们就一起来了解一下c语言中栈的基本操作. C语言对栈的实现基本操作,操作如下: #include <stdio.h> #include <malloc.h> #include <stdlib.h> #include <stdbool.h> typedef struct Node { int data; struct Node * pNext;

深入Go语言文本类型

Go的作者Ken Thompson是UTF-8的发明人(也是C,Unix,Plan9等的创始人),因此在关于字符编码上,Go有着独到而周全的设计.本文介绍了Go语言中的三种内置文本类型:string, byte,rune的内部表示与相互转换. 1. 概览 Go中,字符串string是内置类型,与文本处理相关的内置类型还有符文rune和字节byte. UTF-8编码在Go语言中有着特殊的位置,无论是源代码的文本编码,还是字符串的内部编码都是UTF-8.Go绕开前辈语言们踩过的坑,使用了UTF8作为