最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
GO语言变量及数据类型(variable, data type) 学习总结教程
时间:2015-01-23 编辑:简简单单 来源:一聚教程网
1. variable
1.1 变量使用关键字 var 定义。变量是强类型的。
package main
import "fmt"
var i int
var c, python, java bool
func main() {
fmt.Println(i, c, python, java)
}
1.2 定义变量时候可以不指定类型,而是通过赋值获得类型
package main
import "fmt"
var i, j int = 1, 2
var c, python, java = true, false, "no!"
func main() {
fmt.Println(i, j, c, python, java)
}
1.3 函数内临时变量定义,通过 := 定义
package main
import "fmt"
func main() {
var i, j int = 1, 2
k := 3
c, python, java := true, false, "no!"
fmt.Println(i, j, k, c, python, java)
}
2. data type
2.1 所有的数据类型
bool
string
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
byte // alias for uint8
rune // alias for int32
// represents a Unicode code point
float32 float64
complex64 complex128
2.2 所有的数据类型必须显示转换,否则会编译错误
var i int = 42
var f float64 = float64(i)
var u uint = uint(f)
2.3 常量
常量可以是数字,字符串,字符,布尔类型
常量的申明与变量相同,只是在前面加上const关键字
常量不能使用 := 赋值
package main
import "fmt"
const Pi = 3.14
func main() {
const World = "世界"
fmt.Println("Hello", World)
fmt.Println("Happy", Pi, "Day")
const Truth = true
fmt.Println("Go rules?", Truth)
}
3. struct
struct与C语言几乎一样,使用tpye和struct关键字定义。
package main
import "fmt"
type Vertex struct {
X int
Y int
}
func main() {
fmt.Println(Vertex{1, 2})
}
3.1 使用“点”访问结构体内的变量
package main
import "fmt"
type Vertex struct {
X int
Y int
}
func main() {
v := Vertex{1, 2}
v.X = 4
fmt.Println(v.X)
}
Java中没有struct还真是不完美。定义一个结构体要多写好多代码。
3.2 构造时候指定变量名称赋值
package main
import "fmt"
type Vertex struct {
X, Y int
}
var (
p = Vertex{1, 2} // has type Vertex
q = &Vertex{1, 2} // has type *Vertex
r = Vertex{X: 1} // Y:0 is implicit
s = Vertex{} // X:0 and Y:0
)
func main() {
fmt.Println(p, q, r, s)
}
相关文章
- Python变量和数据类型详解 04-06
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10