go语言(二)变量
来源:互联网 发布:电脑程序编程入门 编辑:程序博客网 时间:2024/05/14 10:11
一、定义赋值
定义一个int的
var myVar int
定义多个
var myVar, myVar1, myVar2 int
定义并赋予初始值
var myVar int = 1
定义多个并赋予初始值
var myVar, myVar1, myVar2 int = 1, 2,3
麻烦是吧。
其实可以简单:
var myVar, myVar1, myVar2 = 1, 2,3
但是还可以简单:
myVar, myVar1, myVar2 = 1, 2, 3
另外可以每个变量的类型可以不一样的哦
myVar, myVar1, myVar2 = 1, 2, “a”
但是这个方式不能用在函数外。 在函数外全局不能不加上var。不过了还得记住了在函数内定义的变量必须得使用否则编译不能通过。
二、数据类型
数字类型:
有通用的int 和float型,
int8 ,int16 ,int32 ,int64
byte ,uint8 ,uint16 ,uint32 ,uint64 (无符号型的)
而上面定义的int是与平台相关的。byte是unit8的别名是一样的类型。
这里要记住int 和 int16 int32 不能随便转换,所有的不同类型都不能互相赋值,必须得自己强制转换。
例如:
package main
import "fmt"
var myVar, myVar1, myVar2 int = 1, 2,3
func main() {
myV, myV1, myV2 := 1, 2,3
//var v1 int32 = 32
var v2 int64 = 34
v2 = int64(myV)
fmt.Printf("%d",v2)
fmt.Printf("%d",myV)
fmt.Printf("%d",myV1)
fmt.Printf("%d",myV2)
fmt.Printf("hello, world\n")
}
字符串:
类型名string,在go中都是用的utf8字符集,字符串不能直接修改。要修改如下:
s := "hello"
c := []byte(s) // 将字符串 s 转换为 []byte 类型
c[0] = 'c'
s2 := string(c) // 再转换回 string 类型
fmt.Printf("%s\n", s2)
布尔型:
类型名bool,值是true或false,默认为false。
复合数据类型struct,array,slice,map
struct:
type AStruct struct {
X int
Y int
}
myStruct :=AStruct{X:1, Y:2}
myStruct.X = 100
myStruct.Y = 200
基本和c的一样 就是访问的时候用的是的是“.”
数组array
数组定义:var by [32] byte
var stru [20] struct {x, y int32}
var [3][5] int //多维数组3行5列
这里先记住,go提供的数组是不能改变长度的,另外函数传递的时候传得是值,也就是说会被复制一份。
切片slice
看到上面是不是觉得数组用着不方便?不要紧有slice
定义:
1.从数组中创建一个数组切片
var mySlice [] int = myarray[1:] //数组从第一个元素开始所有的元素
var mySlice2 [] int = myarray[:6] //数组从开始到第六个元素开始所有的元素
var mySlice3 [] int = myarray[3:6] //数组从第三个元素到第六个元素
2.直接创建
mySlice := make([]int 3) //3个元素,初始值为0
mySlice2 := make([]int 3, 6) //3个元素,初始值为6
mySlice3 := [] int{1,2,3,4,5,6} //创建并赋值
map(可以说是hash或者说是字典)
声明
var mapMap map[string] mytype
函数创建
myMap = make(map[string] mytype, 100) //创建100个
赋值
myMap[“123”] = mytype{1,3,4}
删除
delete(myMap, “123”)
就这样,完!
- go语言(二)变量
- GO语言补充(二)
- Go语言学习笔记(二) [变量、类型、关键字]
- Go语言编程(四)之变量
- Go语言学习(1)-变量
- go语言示例:变量
- Go 语言变量
- Go语言变量类型
- go语言学习-变量
- 5.Go 语言变量
- 4.Go语言变量
- Go语言变量
- go语言学习-变量
- go语言学习-变量
- Go语言学习二:Go基础(变量、常量、数值类型、字符串、错误类型)
- Go 编程语言入门教程 (二)
- Go语言并发编程(二)
- Go语言圣经(中文版)读书笔记(二)
- uva 10369 By ACReaper
- 软件级负载均衡器(LVS/HAProxy/Nginx)的特点简介和对比
- hudson(jenkins)任务设置一天多次构建
- NFC应用(三)点对点(P2P)通信
- ios 图片添加阴影
- go语言(二)变量
- MySql5.5半同步复制(Semi-sync repication)
- 浅谈大型网站动态应用系统架构
- 对付CNNIC这样的老流氓,国民应剥其皮揭它老底----CNNIC证书的危害及其清除
- Eclipse快捷键
- Mysql blackhole(黑洞引擎)
- 大型网站数据库架构问题及解决方案(转)
- NSDate的计算问题、日期计算、时区问题、NSTimer
- 题目1165:字符串匹配