返回顶部
首页 > 资讯 > 后端开发 > GO >GO语言基本类型String和Slice,Map操作详解
  • 781
分享到

GO语言基本类型String和Slice,Map操作详解

2024-04-02 19:04:59 781人浏览 安东尼
摘要

目录本文大纲1、字符串StringString常用操作:获取长度和遍历字符串的strings包字符串的strconv包:2、切片Slice3、集合Map本文大纲 本文继续学习Go语言

本文大纲

本文继续学习Go语言基础知识点。

1、字符串String

String是Go语言的基本类型,在初始化后不能修改,Go字符串是一串固定长度的字符连接起来的字符序列,当然它也是一个字节的切片(Slice)。

import ("fmt")
func main() {  
    name := "Hello World" //声明一个值为 Hello World的字符串变量 name
    fmt.Println(name)
}

String常用操作:获取长度和遍历

1、获取字符串长度:len()函数

str1 := "hello world"
fmt.Println(len(str1)) // 11

2、字符串遍历方式1:

str := "hello"
for i := 0; i < len(str); i++ {
	fmt.Println(i,str[i])
}

3、字符串遍历方式2:

str := "hello"
for i,ch := range str {
	fmt.Println(i,ch)
}

4、使用函数string()将其他类型转换为字符串

num := 12
fmt.Printf("%T \n", string(num)      // "12"  string

5、字符串拼接

str1 := "hello "
str2 := " world"
//创建字节缓冲
var stringBuilder strings.Builder
//把字符串写入缓冲
stringBuilder.WriteString(str1)
stringBuilder.WriteString(str2)
//将缓冲以字符串形式输出
fmt.Println(stringBuilder.String())

字符串的strings包

//查找s在字符串str中的索引
Index(str, s string) int 
//判断str是否包含s
Contains(str, s string) bool
//通过字符串str连接切片 s
Join(s []string, str string) string
//替换字符串str中old字符串为new字符串,n表示替换的次数,小于0全部替换
Replace(str,old,new string,n int) string

字符串的strconv包:

用于与基本类型之间的转换,常用函数有Append、Format、Parse

  • Append 系列函数将整数等转换为字符串后,添加到现有的字节数组
  • FORMat 系列函数把其他类型的转换为字符串
  • Parse 系列函数把字符串转换为其他类型

2、切片Slice

切片(slice)的作用是解决GO数组长度不能扩展的问题。是一种方便、灵活且强大的包装器。它本身没有任何数据,只是对现有数组的引用。

切片定义

var identifier []type

切片不需要说明长度, 或使用make()函数来创建切片:

var slice1 []type = make([]type, len)
也可以简写为
slice1 := make([]type, len)

示例

func main() {
   
   numbers := []int{0,1,2,3,4,5,6,7,8}   
   printSlice(numbers)
   
   fmt.Println("numbers ==", numbers)
   
   fmt.Println("numbers[1:4] ==", numbers[1:4])
   
   fmt.Println("numbers[:3] ==", numbers[:3])
}
func printSlice(x []int){
   fmt.Printf("len=%d cap=%d slice=%v\n",len(x),cap(x),x)
}
打印结果:
len=9 cap=9 slice=[0 1 2 3 4 5 6 7 8]
numbers == [0 1 2 3 4 5 6 7 8]
numbers[1:4] == [1 2 3]
numbers[:3] == [0 1 2]

3、集合Map

Map是Go语言的内置类型,将一个值与一个键关联起来,是一种无序的键值对的集合,可以使用相应的键检索值(类比Java中的Map来记)。

// 声明一个map类型,[]内的类型指任意可以进行比较的类型 int指值类型
m := map[string]int{"a":1,"b":2}
fmt.Print(m["a"])

示例:

func main() {
   var countryCapitalMap map[string]string
   
   countryCapitalMap = make(map[string]string)
   
   countryCapitalMap["France"] = "Paris"
   countryCapitalMap["Italy"] = "Rome"
   countryCapitalMap["Japan"] = "Tokyo"
   countryCapitalMap["India"] = "New Delhi"
   
   for country := range countryCapitalMap {
      fmt.Println("Capital of",country,"is",countryCapitalMap[country])
   }

运行结果:

   Capital of France is Paris
   Capital of Italy is Rome
   Capital of Japan is Tokyo
   Capital of India is New Delhi 

以上就是GO语言基本类型String和Slice,Map操作详解的详细内容,更多关于GO基本类型String Slice Map的资料请关注编程网其它相关文章!

您可能感兴趣的文档:

--结束END--

本文标题: GO语言基本类型String和Slice,Map操作详解

本文链接: https://lsjlt.com/news/121007.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • GO语言基本类型String和Slice,Map操作详解
    目录本文大纲1、字符串StringString常用操作:获取长度和遍历字符串的strings包字符串的strconv包:2、切片Slice3、集合Map本文大纲 本文继续学习GO语言...
    99+
    2024-04-02
  • Go语言类型详解:基本类型有哪些?
    Go语言类型详解:基本类型有哪些? 作为一门静态类型的编程语言,Go语言中拥有丰富的基本类型,这些类型为程序员提供了灵活性和效率。本文将详细介绍Go语言中常见的基本类型,并附上相应的代...
    99+
    2024-04-02
  • 详解Go语言中的Slice链式操作
    目录示例原理实现示例 首先模拟一个业务场景,有订单、产品、自定义订单三个结构体,订单中包含多个产品: type Order struct { Id string Pr...
    99+
    2023-05-15
    Go Slice链式操作 Go Slice操作 Go Slice
  • Go语言数据类型详解:基本数据类型概述
    go 语言提供了以下基本数据类型:bool:布尔型int:有符号整数uint:无符号整数float:浮点数complex:复数型byte:字符型string:字符串 Go 语言数据类型...
    99+
    2024-04-03
    数据类型 go语言
  • Go语言特点及基本数据类型使用详解
    目录一、Golang 简介1.Go 语言的特点2.Golang 的变量作用域3.Golang 执行流程的两种方式二、Golang 的基本操作1.在 Linux 上安装 Golang ...
    99+
    2024-04-02
  • pandas的Series类型与基本操作详解
    目录1 Series1.1创造一个serise数据1.2 指定index1.3 用dictionary构造一个series1.4 用numpy ndarray构造一个Series1....
    99+
    2024-04-02
  • 详解C语言的基本数据类型
    目录1、C语言基本数据类型2、计算机中的单位3、各数据类型的大小及字取值大小总结1、C语言基本数据类型 2、计算机中的单位 3、各数据类型的大小及字取值大小 对于short i...
    99+
    2024-04-02
  • Go语言中基本数据类型的相互转换详解
    目录基本数据类型的相互转换基本语法小知识基本数据类型和string的转换方法一方法二string和基本数据类型转换基本数据类型的相互转换 Go在不同类型的变量之间赋值时需要显示转换,...
    99+
    2024-04-02
  • 重学Go语言之基础数据类型详解
    目录前言布尔型数字类型整型浮点型复数字符串小结前言 Go语言有非常强大的数据类型系统,其支持的数据类型大体上可分为四类:基础数据类型、引用数据类型、接口类型、复合类型。 基础数据类型...
    99+
    2023-02-28
    Go语言基础数据类型 Go语言数据类型 Go 数据类型
  • 使用自定义类型作为键的Go语言map
    标题:使用自定义类型作为键的Go语言map示例 在Go语言中,可以使用自定义类型作为map的键,这为我们提供了更灵活的数据存储方式。通过定义自定义类型,可以实现更复杂的键值关系,以满足...
    99+
    2024-04-02
  • Go语言基础map用法及示例详解
    目录概述语法声明和初始化读取删除遍历总结示例 概述 map是基于key-value键值对的无序的集合 Go语言中的map是引用类型 必须初始化才能使用。 ...
    99+
    2024-04-02
  • 详解Go语言Slice作为函数参数的使用
    目录前言问题与解析典型问题其它疑问1其它疑问2结论参考链接前言 首先要明确Go语言中实质只有值传递,引用传递和指针传递是相对于参数类型来说。 个人认为上诉的结论不对,把引用类型看做...
    99+
    2024-04-02
  • Redis基本数据类型String常用操作命令
    目录Redis数据类型String操作命令一、append 追加字符串二、strlen 获取key 字符串长度三、自增、自减四、字符串range五、替换字符串六、设置值及其过期时间s...
    99+
    2024-04-02
  • R语言基本对象类型知识点详解
    基本向量 包含单类型对象(例如整数,浮点数,复数,文本,逻辑值或者原始型数据)的向量 复合对象 包含一些列基本向量的数据结构,例如列表,配对列表,``S4对象或者环境. 这些对象的特...
    99+
    2024-04-02
  • Go语言之嵌入类型详解
    一、什么是嵌入类型 先看如下代码: type user struct { name string email string } type admin struct ...
    99+
    2024-04-02
  • Go语言的数据类型详解
    标题:Go语言的数据类型详解 在Go语言中,数据类型是非常重要的概念。Go语言提供了丰富的数据类型,包括基本数据类型、复合数据类型和自定义数据类型。本文将详细介绍Go语言中常用的数据类...
    99+
    2024-03-04
    数据类型 go语言 详解 键值对
  • Go语言操作Excel利器之excelize类库详解
    目录前言Excelize简介安装导出 Excel 文档读取Excel文档小结前言 在开发中一些需求需要通过程序操作excel文档,例如导出excel、导入excel、向excel文档...
    99+
    2024-04-02
  • C语言类的基本语法详解
    目录1、由C语言的结构体进入到C++中的类2、C++中如何定义类?3、C++中实例化一个对象4、C++类的访问限定及其封装 C++中的访问限定符5、C++中类的作用域6、成员变量和方...
    99+
    2024-04-02
  • Go语言基础学习之map的示例详解
    目录Mapmap定义map基本使用判断某个键是否存在map的遍历使用delete()函数删除键值对按照指定顺序遍历map元素为map类型的切片值为切片类型的mapMap实现原理什么是...
    99+
    2023-05-14
    Golang map原理 Golang map实现 Golang map
  • Go 语言结构体链表的基本操作
    目录1. 什么是链表2. 单项链表的基本操作3. 使用 struct 定义单链表4. 尾部添加节点方法一5. 头部插入节点方法一6. 指定节点后添加新节点7. 删除节点1. 什么是链...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作