首页
Search
1
test
170 阅读
2
循环打印文本切片值
12 阅读
3
分割文本
11 阅读
4
map和结构体切片
9 阅读
5
map和结构体
9 阅读
默认
Golang
JavaScript
Shell
登录
Search
AILA
累计撰写
6
篇文章
累计收到
0
条评论
首页
栏目
默认
Golang
JavaScript
Shell
页面
搜索到
5
篇与
的结果
2024-07-22
循环打印文本切片值
package main import ( "fmt" "sync" ) var slice = []string{"apple", "banana", "orange"} var index int var mutex sync.Mutex func main() { P() P() P() } func P() { mutex.Lock() defer mutex.Unlock() index := index % len(slice) fmt.Println(slice[index]) index++ }
2024年07月22日
12 阅读
0 评论
0 点赞
2024-07-22
map和结构体
package main import "fmt" // 定义一个结构体 type Person struct { Name string Age int } func main() { // 使用 map 存储 Person 结构体实例 people := make(map[string]Person) // 创建 Person 实例并添加到 map 中 person1 := Person{Name: "Alice", Age: 30} people["alice"] = person1 person2 := Person{Name: "Bob", Age: 25} people["bob"] = person2 // 访问 map 中的 Person 实例 fmt.Println(people["alice"].Name) fmt.Println(people["bob"]) // 将 map 转换成 JSON jsonData, err := json.Marshal(people) if err != nil { fmt.Println("Error converting map to JSON:", err) return } // 打印 JSON 数据 fmt.Println(string(jsonData)) }输出例子{ "alice": { "name": "Alice", "age": 30 }, "bob": { "name": "Bob", "age": 25 } }
2024年07月22日
9 阅读
0 评论
0 点赞
2024-07-22
分割文本
package main import ( "fmt" "strings" ) func main() { // 原始字符串 str := "AILA.tcp.333" // 分割字符串 parts := strings.Split(str, ".") // 设置变量 var name string var proxyName string if len(parts) > 0 { name = parts[0] } if len(parts) > 1 { // 取第一外所有 proxyName = strings.Join(parts[1:], ".") } // 输出结果 fmt.Println("name:", name) fmt.Println("proxyName:", proxyName) fmt.Println(len(parts)) }
2024年07月22日
11 阅读
0 评论
0 点赞
2024-07-19
合并多个结构体切片
package main import "fmt" type Rectangle struct { Name string Id int64 } func main() { var a1 []Rectangle = []Rectangle{ {Name: "Rectangle 1", Id: 1}, {Name: "Rectangle 2", Id: 2}, } var a2 []Rectangle = []Rectangle{ {Name: "Rectangle 3", Id: 3}, {Name: "Rectangle 4", Id: 4}, } var a3 []Rectangle = []Rectangle{ {Name: "Rectangle 5", Id: 5}, {Name: "Rectangle 6", Id: 6}, } var a4 []Rectangle = []Rectangle{ {Name: "Rectangle 7", Id: 7}, {Name: "Rectangle 8", Id: 8}, } var merged []Rectangle // 合并切片 a1, a2, a3, a4 到一个新切片 merged merged = append(merged,a1...) merged = append(merged,a2...) merged = append(merged,a3...) merged = append(merged,a4...) // 打印合并后的切片内容 fmt.Println("Merged slice:") for _, rect := range merged { fmt.Printf("Name: %s, Id: %d\n", rect.Name, rect.Id) } } 输出例子Merged slice: Name: Rectangle 1, Id: 1 Name: Rectangle 2, Id: 2 Name: Rectangle 3, Id: 3 Name: Rectangle 4, Id: 4 Name: Rectangle 5, Id: 5 Name: Rectangle 6, Id: 6 Name: Rectangle 7, Id: 7 Name: Rectangle 8, Id: 8
2024年07月19日
8 阅读
0 评论
0 点赞
2024-07-19
map和结构体切片
package main import ( "encoding/json" "fmt" "sync" ) // 定义一个全局变量 persons,map 的值是一个 Person 结构体的切片 var persons map[string][]Person var once sync.Once // 初始化 persons 函数 func initializePersons() { once.Do(func(){ // 确保只初始化一次 persons persons = make(map[string][]Person) fmt.Println("初始化函数") }) // 添加一些数据 persons["部门A"] = append(persons["部门A"], Person{Name: "小明", Age: 25}) persons["部门A"] = append(persons["部门A"], Person{Name: "小红", Age: 30}) persons["部门B"] = append(persons["部门B"], Person{Name: "张三", Age: 28}) persons["部门B"] = append(persons["部门B"], Person{Name: "李四", Age: 32}) persons["部门B"] = append(persons["部门B"], Person{Name: "王五", Age: 27}) } // 定义一个结构体表示某种数据类型 type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { initializePersons() initializePersons() // 将 persons 转换为 JSON 格式并打印 jsonData, err := json.MarshalIndent(persons, "", " ") if err != nil { fmt.Println("JSON 编码失败:", err) return } fmt.Println(string(jsonData)) }输出例子{ "部门A": [ { "name": "小明", "age": 25 }, { "name": "小红", "age": 30 } ], "部门B": [ { "name": "张三", "age": 28 }, { "name": "李四", "age": 32 }, { "name": "王五", "age": 27 } ] }
2024年07月19日
9 阅读
0 评论
0 点赞