Go语言基本数据类型主要包含:bool,number,string

布尔类型

go中的布尔类型,只能是 true 和 false,例如:var b bool = true

数字类型

整型

类型 描述
uint8 无符号 8位整型 (0 到 255)
uint16 无符号 16位整型 (0 到 65535)
uint32 无符号 32位整型 (0 到 4294967295)
uint64 无符号 64位整型 (0 到 18446744073709551615)
int8 有符号 8位整型 (-128 到 127)
int16 有符号 16位整型 (-32768 到 32767)
int32 有符号 32位整型 (-2147483648 到 2147483647)
int64 有符号 64位整型 (-9223372036854775808 到 9223372036854775807)

特殊整型

类型 描述
uint 32位操作系统上就是uint32,64位操作系统上就是uint64
int 32位操作系统上就是int32,64位操作系统上就是int64
uintptr 无符号整型,用于存放一个指针

浮点型

Go语言支持两种浮点型数:float32 和 float64。这两种浮点型数据格式遵循 IEEE 754 标准:float32 的浮点数的最大范围约为3.4e38,可以使用常量定义:math.MaxFloat32。float64 的浮点数的最大范围约为1.8e308,可以使用常量定义:math.MaxFloat64。

打印浮点型,可以使用占位符 %f :

package main

import "fmt"

const p = 3.14159

func main() {
fmt.Printf("%.2f",p) //3.14
}

复数

go语言支持复数的编写,简单了解下:

func main() {
var c1 complex64 = 1+2i
var c2 complex128 = 3+4i
fmt.Println(c1,c2)
}

字符串

go语言中字符串需使用双引号,即 "",单引号是表示一个单字符。

s1 := "hello world"
s2 := "你好"

多行字符串

可以使用 ` 号来实现多行字符串:

func main() {
var str = `
这是第一行
这是第二行
这是第三行
`
fmt.Printf(str)
}

字符串常用操作

求长度,len 方法:

func main() {
str:="hello world"
fmt.Println(len(str)) // 11
}

拼接字符串,使用 + 或者 fmt.Sprintf:

func main() {
s1:="hello "
s2:="world"
s3:=s1+s2
fmt.Println(s3) // hello world s4:=fmt.Sprintf("%s-----%s",s1,s2)
fmt.Println(s4) // hello -----world
}

分割字符串,strings.Split:

func main() {
str:="hello"
a:=strings.Split(str,"")
fmt.Println(a) // [h e l l o]
}

是否包含,strings.Contains:

func main() {
str:="hello"
a:=strings.Contains(str,"h")
fmt.Println(a) // true
}

子串出现的位置,strings.Index 和 strings.LastIndex:

func main() {
str:="hello"
a:=strings.Index(str,"l") // 第一次出现的位置
b:=strings.LastIndex(str,"l") // 最后一次出现的位置
fmt.Println(a,b) // 2 3
}

前缀和后缀的判断,strings.HasPrefix 和 strings.HasSuffix:

func main() {
str:="hello 世界"
a:=strings.HasPrefix(str,"hello") // 是否以"hello"开头
fmt.Println(a) // true
b:=strings.HasSuffix(str,"界") // 是否以"界"结尾
fmt.Println(b) // true
}

更多操作请参考 strings包。

Go语言基本数据类型(四)的更多相关文章

  1. Java语言基础(四)

    Java语言基础(四) 一.基本数据类型(8) byte  8位  使用较少,一般用于网络传输: -128-+127 short  16位 不常用 -32768-+32767 int  32位 常用  ...

  2. 「C语言」数据类型及混合运算与类型转换

    深入学习C语言时,有必要先了解一下数据类型的概念,以及它们之间的混合运算与类型转换. 本篇文章便是根据<C语言程序设计教程>和在线翻阅资料后整理而出.(练习题将逐步更新) 目录:     ...

  3. 谈谈C语言的数据类型

    本文摘要: 本文主要讲述C语言中的数据类型,从基本的数据类型到派生的数据类型,从int ,char ,float double ....到指针,数组,函数,指向指针的指针,指向数组的指针,指向函数的指 ...

  4. C语言的数据类型

    复习之余,做点笔记<C语言之数据类型> 一.整数数据类型 (1)整数数据类型 整数类型 char 字符型变量   1字节(8Bit) short 短整型      2字节(16Bit) i ...

  5. 《C++程序设计语言(英文第四版)》【PDF】下载

    <C++程序设计语言(英文第四版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382177 内容简介 本书是C++领域经典的参 ...

  6. C语言_了解一下C语言中的四种存储类别

    C语言是一门通用计算机编程语言,应用广泛.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言. C语言中的四种存储类别:auto ...

  7. C语言中数据类型的取值范围

    C语言中数据类型的取值范围如下:char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65536 (2 ...

  8. 初识 go 语言:数据类型

    目录 数据类型 指针 结构体 数组 切片 切片的方法 映射 函数闭包 结束语 前言: go语言的第三篇文章,主要讲述go语言中的数据类型,包括指针,结构体,数组,切片,映射,函数闭包等,每个都提供了示 ...

  9. c语言基础:数据类型 分类: iOS学习 c语言基础 2015-06-10 21:43 9人阅读 评论(0) 收藏

    C语言基本数据类型大体上分为: 整型 和 浮点型   字节: 计算机中最小的储存单位     1 Byte = 8 bit 整型:         int     4                  ...

随机推荐

  1. 修改 mvc webapi 默认返回 json 格式

    web api 默认的已 xml 格式返回数据 现在开发一般都是以 json 格式为主 下面配置让 webapi 默认返回 json ,在需要返回 xml 时只需要加一个查询参数 datatype=x ...

  2. C语言 - strlen的编程实现及总结

    一.函数strlen的编程实现 1.strlen函数的实现 原型: size_t strlen(const char *str); 头文件:#include <string.h> 功能:计 ...

  3. 51 Nod 1069 Nim游戏

    分析: a1 xor a2 xor a3 ... xor an !=0 则为必胜态 a1 xor a2 xor a3 ... xor an ==0 则为必败态 也就是说只要计算异或值,如果非零则A赢, ...

  4. luogu P1362 兔子数 x

    P1362 兔子数 题目描述 设 S(N ) 表示 N 的各位数字之和,如 S(484) = 4+8+4 = 16, S(22) = 2+2 = 4.如果一个正整数满足 S(x*x) = S(x) * ...

  5. OCWA提高组模拟赛一 Solution

    Problem A RecMin 给出一个$n \times m$的矩阵,其中$1 \leq n,m \leq 3\ times 10^3$ 给出整数$a,b$,求出在矩阵中所有$a\ times b ...

  6. Ubuntu 16.04配置SSL免费证书

    主要参考地址为:https://blog.csdn.net/setoy/article/details/78441613 本篇主要以Apache这个web服务器来讲解,所以前提必须要安装好apache ...

  7. MySQL定时任务实现方法

    类型一:每隔一分钟插入一条数据:   参数说明: DEFINER:创建者: ON COMPLETION [NOT] PRESERVE :表示当事件不会再发生的情况下,删除事件(注意特定时间执行的事件, ...

  8. Mysql 实用语句记录

    都是工作中遇到的需求,但不是常用sql,特此记录,方便以后使用: 1.将指定列的数据拼起来存到某一列 UPDATE table_name SET b_col_name=CONCAT(b_col_nam ...

  9. [论文理解] Learning Efficient Convolutional Networks through Network Slimming

    Learning Efficient Convolutional Networks through Network Slimming 简介 这是我看的第一篇模型压缩方面的论文,应该也算比较出名的一篇吧 ...

  10. Android的工程目录主要有哪些

    src 源文件gen 生成的文件 R 文件就在此android. jar 依赖的 android sdkassets 资源文件bin 生成的字节码 apk 在此libs 依赖 jar 和 sores ...