这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天
package main
import "fmt"
type Book struct {
title string
author string
profile string
}
func setBookInfo(title string, author string, profile string) Book {
var book Book
book.author = author
book.profile = profile
book.title = title
return book
}
func setBookProfile(book *Book, profile string) {
book.profile = profile
}
func main() {
/**
var int1 int = 1
var str1 string = "2"
var str2 = "fuck you"
valid := false
url := "String=%s,Int=%d"
target := fmt.Sprintf(url, str2, int1)
fmt.Println(int1)
fmt.Println(str1)
fmt.Print(reflect.TypeOf(str2))
fmt.Println(str2)
fmt.Println(valid)
fmt.Printf(url, str2, int1)
fmt.Printf(target)
*/
/**
var list [2]int
list[0] = 1
list[1] = 2
for i := 0; i < 2; i++ {
fmt.Print(list[i])
}
fmt.Println("数组")
var list2 = [...]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
for key, value := range list2 {
fmt.Print(key)
fmt.Println(value)
fmt.Println(list2[key])
}
*/
/**
fmt.Println("Slice切片")
var slice1 []int
var slice2 []int = make([]int, 0) //int后两个参数,第一个为初始长度,第二个为最大长度,append会在初始值后添加
slice1 = append(slice1, 1)
slice1 = append(slice1, 2)
slice2 = append(slice2, 3)
slice2 = append(slice2, 4)
slice2 = append(slice2, 5)
for v := range slice1 {
fmt.Print(slice1[v])
}
for v := range slice2 {
fmt.Print(slice2[v])
}
*/
/**
fmt.Println("Map集合")
//泛型
type map1[Key int | string, Value string | float64] map[Key]Value
var map2 = make(map[string]string)
//var map2 map[string]string = make(map[string]string)
map2["German"] = "Berlin"
map2["France"] = "Paris"
for s, s2 := range map2 {
fmt.Println(s + "\t" + s2)
}
var map3 = make(map1[string, string])
// var map3 map1[string, string] = make(map1[string, string])
map3["Italy"] = "Roma"
map3["England"] = "London"
for s, s2 := range map3 {
fmt.Println(s + "\t" + s2)
}
fmt.Println("指针")
var a = 10
var ap = &a
fmt.Printf("The Address of a is: %v The address of ap is: %v The value of ap is %v The value of a is %v", &a, &ap, ap, *ap)
*/
fmt.Println("结构体")
var book1 Book = setBookInfo("安徒生童话", "安徒生", "...")
fmt.Println(book1)
setBookProfile(&book1, "这是安徒生童话")
fmt.Println(book1)
var bp *Book = &book1
fmt.Println(bp)
fmt.Println(bp.title)
fmt.Println(*bp)
}