<13> go collection-func
来源:互联网 发布:java 多张图片合成pdf 编辑:程序博客网 时间:2024/05/29 13:30
集合的操作:
import ( "fmt" "strings")// 返回数组下标,找不到返回-1func Index(vs []string, t string) int { for i, v := range vs { if v == t { return i } } return -1}// 是否包含t字符串func Include(vs []string, t string) bool { return Index(vs, t) >= 0}// 任何一个字串符合f即返回truefunc Any(vs []string, f func(string) bool) bool { for _, v := range vs { if f(v) { return true } } return false}// 所有字符串符合f才返回truefunc All(vs []string, f func(string) bool) bool { for _, v := range vs { if !f(v) { return false } } return true}// 过滤掉f符合的字符串func Filter(vs []string, f func(string) bool) []string { vsf := make([]string, 0) for _, v := range vs { if f(v) { vsf = append(vsf, v) } } return vsf}func Map(vs []string, f func(string) string) []string { vsm := make([]string, len(vs)) for i, v := range vs { vsm[i] = f(v) } return vsm}func main() { var strs = []string{"peach", "apple", "pear", "plum"} fmt.Println(Index(strs, "pear")) fmt.Println(Include(strs, "grape")) fmt.Println(Any(strs, func(v string) bool { return strings.HasPrefix(v, "p") })) fmt.Println(All(strs, func(v string) bool { return strings.HasPrefix(v, "p") })) fmt.Println(Filter(strs, func(v string) bool { return strings.Contains(v, "e") })) fmt.Println(Map(strs, strings.ToUpper))}// 输出:// 2// false// true// false// [peach apple pear]// [PEACH APPLE PEAR PLUM]
0 0
- <13> go collection-func
- go-func
- Go func 练手
- 第6课 Go函数func&defer
- Go丨语言学习笔记--func
- Go编程基础—函数(func)
- func
- func
- func,func(),new func()的区别
- collection
- collection
- Collection
- collection
- collection
- collection
- Collection
- collection
- Collection
- 使用delete []出现的堆栈调试错误
- Leveldb源码分析--10
- 链表保存学生信息
- LintCode_数组剔除元素后的乘积
- PHP中正则表达式的用法
- <13> go collection-func
- Leveldb源码分析--11
- 杭电ACM1241(dfs)
- Hibernate.cfg.xml文件的配置
- nyoj--1009--So Easy[Ⅰ](数学)
- 如何在EF中直接运行SQL命令
- datagrid参数解读
- Android开发之ViewPager使用详解(一)
- Leveldb源码分析--12