内容简介:之前在项目中需要判断某个slice中是否包含某个元素,当时自己的做法是遍历slice中的每个元素,直到找到了该元素,否则返回false。这种做法是最容易想到,也是最简单的。但是存在一个问题:就是只能对一种数据类型判断,比如上面代码中的int、[]int,如果需要判断其它类型,需要写一个同样的函数,只是参数类型不一样,这样的代码很明显,可用性太低。后来发现可以用反射规避这个问题,利用reflect包中的TypeOf()、ValueOf()和DeepEqual()接口,接口说明请参考文档。代码如下:
之前在项目中需要判断某个slice中是否包含某个元素,当时自己的做法是遍历slice中的每个元素,直到找到了该元素,否则返回false。
simple.pic
这种做法是最容易想到,也是最简单的。但是存在一个问题:就是只能对一种数据类型判断,比如上面代码中的int、[]int,如果需要判断其它类型,需要写一个同样的函数,只是参数类型不一样,这样的代码很明显,可用性太低。
后来发现可以用反射规避这个问题,利用reflect包中的TypeOf()、ValueOf()和DeepEqual()接口,接口说明请参考文档。代码如下:
reflect.pic
瞬间不用再为不同数据类型需要写不同函数而心烦了!
注:参考blog,https://wxnacy.com/2018/11/20/go-in-array/
Thanks!!!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Python判断变量/list 字典 元素 是否存在
- JavaScript判断单链表中是否存在环
- 如何在海量数据中判断某个数据是否存在?
- Sql Server中判断表、列不存在则创建的方法
- Python 中几种判断子串存在的性能比较及分析
- GCC支持在代码中对头文件是否存在的判断(__has_include)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Beginning ARKit for iPhone and iPad
Wallace Wang / Apress / 2018-11-5 / USD 39.99
Explore how to use ARKit to create iOS apps and learn the basics of augmented reality while diving into ARKit specific topics. This book reveals how augmented reality allows you to view the screen on ......一起来看看 《Beginning ARKit for iPhone and iPad》 这本书的介绍吧!