go基础——基本数据类型
GO语言的数据类型:
/*
GO语言的数据类型:
1.基本数据类型:
布尔类型:true,false
数值类型:整数,浮点,复数complex
字符串:string
2.复合数据类型
array,slice,map,function,pointer,struct,interface,channel...
1.值类型:存储的是数值本身,数据传递给其他变量时传递的是数据的副本。
int,float,string,bool,array,struct
2.引用类型:存储的是数据的内存地址,数据传递时传递的地址。默认零值是nil
slice,map,channel,function,pointer
*/
布尔类型和数值类型
package main
import "fmt"
func main() {
//1.bool
var b1 bool
b1 = true
fmt.Printf("%T,%t\n", b1, b1)
b2 := false
fmt.Printf("%T,%t\n", b2, b2)
//2.整数
/*
有符号,最高位表示符号位,0正,1负
int8,-128到127
int16,-32768到32767
int32,-2147483648到2147483647
int64,-9223372036854775808到9223372036854775807
无符号8位整型,所有位都表示数值
uint8,0到255
uint16,0到65535
uint32,0到4294967295
uint64,0到18446744073709551615
*/
//通常使用int和uint,位数根据操作系统自动选择
//但在语法角度,int和int64不是同一种类型
var i1 int = 1000
var i2 int64 = 2000
fmt.Printf("%d,%T\n", i1, i1)
fmt.Printf("%d,%T\n", i2, i2)
//byte:uint8的别称
//rune:int32的别称
var i3 uint8 = 100
var i4 byte = i3
fmt.Printf("%d,%T\n", i4, i4)
//类型推断,默认为int
var i5 = 500
fmt.Printf("%d,%T\n", i5, i5)
//3.浮点:float32,float64
var f1 float32 = 3.1415926
var f2 float64 = 3.1415926
fmt.Printf("%f,%T\n", f1, f1) //默认保留6位小数
fmt.Printf("%f,%T\n", f2, f2)
fmt.Printf("%.2f,%T\n", f1, f1) //保留两位小数
fmt.Println(f2)
}
bool,true
bool,false
1000,int
2000,int64
100,uint8
500,int
3.141593,float32
3.141593,float64
3.14,float32
3.1415926
字符串
package main
import "fmt"
/*
字符串:
1.概念:多个byte的集合,理解为一个字符序列
2.语法:
使用双引号"abc","hello"
也可以使用`abc`,`hello`
*/
func main() {
//1.定义字符串
var s1 string = "彗星"
var s2 string = `恒星`
fmt.Printf("%s,%T\n",s1,s1)
fmt.Printf("%s,%T\n",s2,s2)
//2.单引号双引号区别
s3 := 'a'
s4 := "a"
fmt.Printf("%d,%T\n",s3,s3) //单引号是ASCII码,int32类型
fmt.Printf("%s,%T\n",s4,s4)
s5 := '天'
fmt.Printf("%d,%T,%c,%q\n",s5,s5,s5,s5) //单引号中文,是Unicode编码
//3.转义字符
fmt.Println("\"haha\"")
fmt.Println(`"haha"`)
fmt.Println("`haha`")
fmt.Printf("hello\tworld\n")
}
彗星,string
恒星,string
97,int32
a,string
22825,int32,天,'天'
"haha"
"haha"
`haha`
hello world
数据类型转换
package main
import "fmt"
/*
数据类型转换:
go语言是静态语言,定义、赋值、运算必须类型一致
语法:Type(Value)
注意:
兼容的类型才能转换
常数自动转换,变量才需要手动转换
*/
func main() {
var a int8 = 10
var b int16
b = int16(a)
fmt.Println(a, b)
}
10 10
go基础——基本数据类型的更多相关文章
- C#基础--之数据类型
C#基础--之数据类型 摘自:http://www.cnblogs.com/tonney/archive/2011/03/18/1987577.html 在第一章我们了解了C#的输入.输出语句后,我这 ...
- page74-泛型可迭代的基础集合数据类型的API-Bag+Queue+Stack
[泛型可迭代的基础集合数据类型的API] 背包:就是一种不支持从中删除元素的集合数据类型——它的目的就是帮助用例收集元素并迭代遍历所有收集到的元素.(用例也可以检查背包是否为空, 或者获取背包中元素的 ...
- JavaScript基础:数据类型的中的那些少见多怪
原文:JavaScript基础:数据类型的中的那些少见多怪 Javascript共有6种数据类型,其中包括3个基本数据类型(string,number,boolean).2个特殊数据类型(undefi ...
- Python基础之数据类型
Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...
- java基础(数据类型,运算符)
java基础之数据类型(变量) java中存在的数据有常量和变量 常量:在程序执行的过程中其值不可以发生改变 常量的分类 字面值常量 字面值常量的分类 常量 描述 字符串常量 用双引号括起来的内容 整 ...
- js基础--javaScript数据类型你都弄明白了吗?绝对干货
欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...
- Go语言基础之数据类型
Go语言基础之数据类型 Go语言中有丰富的数据类型,除了基本的整型.浮点型.布尔型.字符串外,还有数组.切片.结构体.函数.map.通道(channel)等.Go 语言的基本类型和其他语言大同小异. ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
- C#基础 常用语&数据类型定义&类型转换
int temp = Console.Read(); Console.WriteLine(temp); Console.Read(); Console.Write(" ");直接 ...
- python基础一数据类型之字典
摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...
随机推荐
- 【Linux】Linux安装Tomcat
1.下载Tomcat 链接:Tomcat下载链接 提取码:88ae 链接:Xshell下载链接 提取码:439l 2.创建一个文件夹,上传tomcat到此文件夹 [root@localhost bin ...
- Kafka和RabbitMQ有哪些区别,各自适合什么场景?
经常有人问我 有个 xx 需求,我应该用 Kafka 还是 RabbitMQ ? 这个问题很常见,而且很多人对二者的选择也把握不好. 所以我决定写篇文章来详细说一下:Kafka 和 RabbitMQ ...
- Git_添加、删除远端仓库中的文件
一.将文件添加到远端仓库 1.新增文件 2.使用git add 将文件添加到本地缓存中 3.使用git commit 将文件添加到本地仓库中 4.使用git push 将本地仓库中的修改同步到远端仓库 ...
- js 模块化 -- export 时 一个默认和多个默认的写法
js文件 只有一个 food 类,一般写 export {food} 或者 export {food as default} 那么如果有多个呢? 这样 export {food, food2} 或者 ...
- nuxt2.0项目创建(最新)
使用import需要babel编译写法如下 //修改1打开package.json文件 "dev": "cross-env NODE_ENV=development n ...
- Centos安装与配置
一.安装 默认安装 二.配置 配置网卡 BOOTPROTO=none ONBOOT=yes IPADDR=xxx.xxx.x.xx PREFIX=24 GATEWAY=xxx.xxx.x.x DNS1 ...
- Backbone.js 0.9.2 源码分析收藏
Backbone 为复杂Javascript应用程序提供模型(models).集合(collections).视图(views)的结构.其中模型用于绑定键值数据和自定义事件:集合附有可枚举函数的丰富A ...
- nginx+php环境搭建详解(Linux)
今天在内网环境下,给linux主机安装nginx+php环境,由于是内网环境,只能手动解压缩包进行安装,在这过程中我也着实遇到了一些问题(困扰了我许久),还好最后搭建环境成功了,所以写篇博客记录一下, ...
- 机器学习&恶意代码检测简介
Malware detection 目录 可执行文件简介 检测方法概述 资源及参考文献 可执行文件简介 ELF(Executable Linkable Format) linux下的可执行文件格式,按 ...
- 通过Javascript实现把数组里的内容以表格方式呈现到页面从
一.把数组里的内容呈现到页面从,以表格方式 <!doctype html> <html> <head> <meta charset="utf-8&q ...