Go语言数据类型
1.1 整形与字符串之间的转换
1 | // 同类型之间可以进行相加 |
1.2常见数学运算
1 | package main |
1.3 指针
nil 使用new关键字进行变量声明
1 | // 声明一个变量 |
- new关键字创建内存并进行内部数据的初始化,并返回一个指针类型。
- nil nil在
go
语言中表示空值。
1.4 超大整形
1 | var s1 big.Int |
超大整形相加
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29// 超大整形值相加
// 方式一
n1 := new(big.Int)
n1.SetInt64(10)
n2 := new(big.Int)
n2.SetInt64(20)
res := new(big.Int)
res.Add(n1, n2)
fmt.Println(res)
// 方式二:
n1 := big.NewInt(10)
n2 := big.NewInt(20)
res := new(big.Int)
// 加
res.Add(n1, n2)
// 减
res.Sub(n1, n2)
// 乘
res.Mul(n1, n2)
// 除
res.Div(n1, n2)
fmt.Println(res)
fmt.Println(res.Int64(), res.String()) // 转成int和string超大整形相加示例
1
2
3
4
5
6
7
8
9
10h1 := new(big.Int)
h1.SetString("918293481248912748231747823", 10)
h2 := new(big.Int)
h2.SetString("1203129834124782374892", 10)
result := new(big.Int)
result.Add(h1, n2)
fmt.Println(result.String())
// 918293481248912748231747843注意点
1
2
3
4
5
6
7
8
9
10h1 := new(big.Int)
h1.SetString("918293481248912748231747823", 10)
h2 := new(big.Int)
h2.SetString("1203129834124782374892", 10)
result := new(big.Int)
result.Add(h1, n2)
fmt.Println(result.String())
// 918293481248912748231747843
索引切片
1 | package main |
数组
1 | name1 := [2]string{"shuke", "jack"} |