Go
package main
import "fmt"
func main() {
var str string = "我不是针对你,我是说在座的各位都是乐色。"
var str2 = "哦,你就是被蒙面人打败的黑熊啊"
fmt.Printf(str + "\n")
fmt.Printf(str2 + "\n")
// 声明并初始化一个或多个新变量。
x,y := 9527, "嘿嘿"
fmt.Printf("x=%d, y:%s\n", x, y) // x=9527, y:嘿嘿
a,b := 1, 2
// 多重赋值。对已经存在的变量进行赋值。 这里是交换a、b的值
a, b = b, a
fmt.Println(a, b) // 2 1
var v bool
ptr := &v // 指针
fmt.Printf("ptr: %p\n", ptr)
var ptr2 *int; // 指针初始值为nil
fmt.Printf("ptr2: %p\n", ptr2) // ptr2: 0x0
fmt.Printf("%t\n", ptr2 == nil) // true
var str3 string = "无所谓"
fmt.Printf("%p\n",&str3)
// 打印类型
fmt.Printf("ptr2 type: %T\n", ptr2) // ptr2 type: *int
fmt.Printf("str3 type: %T\n", str3) // str3 type: string
var ptr3 = &str
fmt.Printf("ptr3 type: %T\n", ptr3) // ptr3 type: *string
str4 := *ptr3 // 指针解引用
fmt.Printf("str4: %s\n", str4) // str4: 我不是针对你,我是说在座的各位都是乐色。
*ptr3 = "好运连连" // 指针修改字符串不起作用
fmt.Printf("str4: %s\n", str4) // str4: 我不是针对你,我是说在座的各位都是乐色。
var val5 = 1605
var ptr5 = &val5
*ptr5 = 9527 // 修改成功
fmt.Printf("val5: %d\n", val5) // val5: 9527
// 还可以new创建指针
str6 := new(string)
*str6 = "有一人血气方刚,领袖江东,孙策孙伯符可谓英雄也?"
fmt.Println(*str6)
var arr [2]int = [2]int{1, 2} // 定义数组
fmt.Println(arr[0])
fmt.Println(arr[len(arr)-1])
// 打印索引和元素
for i, v := range arr {
fmt.Printf("%d %d\n", i, v)
}
// 从数组生成切片 . 包含开始索引,不包含结束索引. 可以省略开头或结束索引
var arr2 = [...]int{1, 2, 3}
fmt.Println(arr2[1:3])
// 声明整型切片
var intList []int = []int{} // 空切片
// 构造切片 make( []Type, size, cap )
slice1 := make([]int, 2, 5)
}
打印:

ok. 很简单