Go-ACM模式刷题常用函数和注意事项
2022/9/16 23:18:34
本文主要是介绍Go-ACM模式刷题常用函数和注意事项,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Go-ACM模式刷题常用函数和注意事项
由于个人能力有限,部分描述若不正确,感谢指出!暂时记录这些,期待更新!
一、终端输入相关函数和注意事项
var a,b,x int fmt.Scan(&a,&b) // 一个或多个数据绑定。用空格分割stdin输入数据,并把换行符算作空格,然后传递给本函数的参数 fmt.Scanln(&a,&b) // 类似Scan,遇到换行停止扫描,必须在最后一项之后有换行符或EOF fmt.Scanf("%d",&x) // 对空格分割的字符串或其他数据类型格式化,会把换行符也当作输入的!由于数据是先缓存,然后再传递给参数,所以如果格式中没有换行符,但输入回车换行,会保存到下一个参数中!
还有一些细节,比如输入类型和指定类型不符合时, 值为类型的默认值!多编程多动手体会自己写的bug!
个人体会,少用fmt.Scanf(),不会分析,很容易跳到坑里,比如为啥输入参数绑定不对!很可能是回车换行符导致的!
二、字符串的处理
// strconv包,字符串和其他类型的相互转换 strconv.Itoa(int) // int -> string strconv.Atoi(str) // string -> int strconv.ParseInt(str, , ) // str->int 可以指定进制、类型.还有float\bool等 strconv.FormatInt(int, , ) // int->str。还有其他float等函数
// strings包,字符串的查找 strings.IndexByte(str, byte) // 查找字符串中字符的第一个位置。LastIndexByte是最后一个 strings.Index(str,str2) // 查找子串str2的第一个位置 // 字符串分割 strings.Splie(str, str2) // 将str按str2作为分隔符进行分割,返回字符串切片 // 大小写切换 strings.ToLower(str) // string全部转为小写 strings.ToUppe(str) // str全部转为大写 // 字符串删除 strings.Trim(str, str2) // 将str中首位包含的str2全部删除
// 强制类型转换 x := []rune(str) // 字符串转rune切片 str := string(x) // rune切片转为字符串
三、排序
// 升序 sort.Ints([]int) // 对int类型的切片升序排序 sort.Float64s([]float64) sort.Strings([]int) sort.Reverse() // 进行反转
这篇关于Go-ACM模式刷题常用函数和注意事项的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 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专业技术文章分享
- 2024-12-10搭建个人博客网站之一、使用hugo创建个人博客网站