字符串 -- string

  • 字符串使用双引号表示 " "

  • 多行或原始字符串(反斜杠失去转义行为)使用 反引号 ``

  • 字符使用单引号表示 ' ',表示单独的字母、中文、数字

  • 字符串转换 -- strings

    • 拼接 + fmt.Sprintf
    • 分割 Split
    • 连接 Join
    • 包含 Contains
    • 前后缀判断 HasPrefix HasSuffix
    • 子串位置 Index LastIndex
    • ...
    package main
    
    import (
    "fmt"
    "strings"
    ) func main() {
    name := "beimenchuixue"
    fmt.Printf("%T", name) // 字符拼接
    age := "18岁"
    // + 号拼接
    fmt.Println(name + age)
    // 格式化拼接
    newStr := fmt.Sprintf("%s%s", name, age)
    fmt.Println(newStr) // 字符串分割 split,反引号让转义符号\失去转义,成为一个普通字符
    filePath := `C:\Users\Administrator\Desktop\blog\golang\基础知识`
    fmt.Println(strings.Split(filePath, "\\")) // 字符串前缀和后缀判断
    fileName := "b-hi.jpg"
    // 前缀判断
    fmt.Println(strings.HasPrefix(fileName, "b"))
    // 后缀判断
    fmt.Println(strings.HasSuffix(fileName, ".jpg")) // 包含某个字符判断 contain
    fmt.Print(strings.Contains(fileName, "hi"))
    }
  • 字符串是不可变类型,想修改需要讲字符串转换成其他可变类型

转义字符-反斜杠 \

  • 把前置了反斜杠的字符转义成特殊字符

    双引号 \"

    单引号 \'

    回车 \r

    换行 \n

    退格 \b

字符编码

  • 二进制 - 数字 - 字符
  • Go内存使用Unicode编码,源文件使用UTF-8编码
  • 通用编程语言,源码文件使用UTF-8编码,读取到内存中运行使用Unicode编码

字符默认类型

  • 使用双引号的默认为string类型,runeint32的别名
  • 使用单引号的默认为int32类型,byteuint8的别名

字符串抽取和切片

  • 抽取 string[index] => []byte(string)[index]

    这对包含中文的字符串出现问题,为了正确识别,可以将字符串转成 []rune类型或者通过 for range 遍历

  • 切片 string[start:end]

  • 抽取和切片的索引使用的字节单位

Go-数据类型-字符串-string的更多相关文章

  1. redis 基本数据类型-字符串(String)

    不瘦原来对redis也是有个大概的了解(就你知道的多), 但是最近和大神聊天的过程中才明白自己知道的简直就是鸡毛蒜皮(让你得瑟),所以不瘦打算从头在捋一遍,顺便把过程也记录下来,如果能给大家在学习re ...

  2. Javascript基础系列之(三)数据类型 (字符串 String)

    javascript一共有9种数据类型 字符串 String 数值型 Number 布尔型 Boolean 未定义 Undefine 空值 Null 对象 Object 引用Refernce 列表型 ...

  3. python 数据类型: 字符串String / 列表List / 元组Tuple / 集合Set / 字典Dictionary

    #python中标准数据类型 字符串String 列表List 元组Tuple 集合Set 字典Dictionary 铭记:变量无类型,对象有类型 #单个变量赋值 countn00 = '; #整数 ...

  4. C# 数据类型之 String(字符串)

    Ø  简介 在开发中最常见的数据类型就是 String 类型,即字符串类型.为什么要单独讨论下这个类型,是因为:它是系统内置的基础数据类型:它的使用频率非常高:它是一个特殊的引用类型.其实大家都会使用 ...

  5. Java中字符串string的数据类型

    Java中字符串string的数据类型 时间:2017-07-03 08:01:47 YuanMxy 原文:https://blog.csdn.net/YuanMxy/article/details/ ...

  6. Python基础数据类型-字符串(string)

    Python基础数据类型-字符串(string) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版 ...

  7. 数据类型总结——String(字符串类型)

    相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...

  8. javascript类型系统——字符串String类型

    × 目录 [1]定义 [2]引号 [3]反斜线[4]特点[5]转字符串 前面的话 javascript没有表示单个字符的字符型,只有字符串String类型,字符型相当于仅包含一个字符的字符串 字符串S ...

  9. c#中的数据类型简介(string)

    Sting 字符串 引入话题 字符串是一个引用类型,从string数据类型的代码定义中也可以看出它实现了IEnumerable<char>接口和IEnumerable接口,因此字符串可以看 ...

  10. 自学Python2.1-基本数据类型-字符串str(object)

    Python str方法总结 class str(object): """ str(object='') -> str str(bytes_or_buffer[, ...

随机推荐

  1. Socket connect 等简要分析

    connect 系统调用 分析 #include <sys/types.h> /* See NOTES */#include <sys/socket.h>int connect ...

  2. centos6安装calamari

    安装操作系统 首先安装操作系统centos6,安装过程选择的是base server,这个不相同不要紧,出现缺少包的时候去iso找出来安装就可以了 calamari的简单介绍 首先简单的介绍下cala ...

  3. Hive 报错Class path contains multiple SLF4J bindings.

    进入hive报错信息如下 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/ ...

  4. Distributing Custom Apps

    Distributing Custom Apps 分配自定义应用程序 November 10, 2020 2020年11月10日 Custom apps let you meet the unique ...

  5. java基本权限指南之:文件和共享目录的基本权限

    简介 java程序是跨平台的,可以运行在windows也可以运行在linux.但是平台不同,平台中的文件权限也是不同的.windows大家经常使用,并且是可视化的权限管理,这里就不多讲了. 本文主要讲 ...

  6. php 判断网站是http还是https

    //判断是http还是https $http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (i ...

  7. Mac系统应该用什么软件进行清理?

    作为一枚资深的Windows系统使用者,小编刚刚转向Mac系统的怀抱时,各种不适应,Windows系统中普遍使用的360清理软件目前暂时没有Mac版本的,这就让小编很是头疼了,大家的Mac都是用的什么 ...

  8. 系统兼容软件CrossOver和虚拟机软件,哪个好用?

    想要在Mac上运行Windows软件的方法有很多种,比较常见的有安装双系统以及虚拟机.但是安装双系统会导致一个很大的问题,就是占用了过多的硬盘空间,这样一来会导致可使用的空间减少. 目前来说,大家都不 ...

  9. 精尽 MyBatis 源码分析 - SqlSession 会话与 SQL 执行入口

    该系列文档是本人在学习 Mybatis 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub 地址.Mybatis-Spring 源码分析 GitHub ...

  10. Eclipse中构造方法自动生成

    代码中点击右键(快捷键Ctrl+Alt+S) ->Source ->Generate Constructor using Fields... ->默认全选(可选择需要作为构造方法参数 ...