分享两道Go语言字符串切片的练习题,附参考答案
2021/11/7 23:10:22
本文主要是介绍分享两道Go语言字符串切片的练习题,附参考答案,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
练习1
给定一个字符串列表,在原有slice基础上,返回不包含空字符串的slice。
如:{“aaa”, “bbb”, “ccc”, “”, “aa”, “”, “bb”, “”, “cc”}
返回:{“aaa”, “bbb”, “ccc”, “aa”, “bb”, “cc”}
参考答案
package main import "fmt" // 去除字符串切片中的空字符串 func strRemoveBlank(data []string) []string { var result []string for _, v := range data { if v != "" { result = append(result, v) } } return result } func main() { data := []string{"aaa", "bbb", "ccc", "", "aa", "", "bb", "", "cc"} fmt.Println(data) result := strRemoveBlank(data) fmt.Println(result) fmt.Println("==================") for k, v := range result { fmt.Println(k, v) } }
输出结果
练习2
写一个函数,清除[]string中的重复字符串。
如:[“aa”,“bb”,“cc”,“aa”,“bb”,“cc”,“aa”,“bb”,“cc”]
结果:[“aa”,“bb”,“cc”]
参考答案
package main import "fmt" // 去除字符串切片中的重复字符串 func strRemoveRepeated(data []string) []string { var result []string for _, v := range data { if !strIsInSlice(v, result) { result = append(result, v) } } return result } // 判断字符串是否在字符串切片中 func strIsInSlice(str string, slice []string) bool { for _, v := range slice { if str == v { return true } } return false } func main() { data := []string{"aa", "bb", "cc", "aa", "bb", "cc", "aa", "bb", "cc"} fmt.Println(data) result := strRemoveRepeated(data) fmt.Println(result) fmt.Println("===============================") for k, v := range result { fmt.Println(k, v) } }
输出结果
这篇关于分享两道Go语言字符串切片的练习题,附参考答案的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-24MongoDB资料:新手入门完全指南
- 2024-12-20go-zero 框架的 RPC 服务 启动start和停止 底层是怎么实现的?-icode9专业技术文章分享
- 2024-12-19Go-Zero 框架的 RPC 服务启动和停止的基本机制和过程是怎么实现的?-icode9专业技术文章分享
- 2024-12-18怎么在golang中使用gRPC测试mock数据?-icode9专业技术文章分享
- 2024-12-15掌握PageRank算法核心!你离Google优化高手只差一步!
- 2024-12-15GORM 中的标签 gorm:"index"是什么?-icode9专业技术文章分享
- 2024-12-11怎么在 Go 语言中获取 Open vSwitch (OVS) 的桥接信息(Bridge)?-icode9专业技术文章分享
- 2024-12-11怎么用Go 语言的库来与 Open vSwitch 进行交互?-icode9专业技术文章分享
- 2024-12-11怎么在 go-zero 项目中发送阿里云短信?-icode9专业技术文章分享
- 2024-12-11怎么使用阿里云 Go SDK (alibaba-cloud-sdk-go) 发送短信?-icode9专业技术文章分享