【Golang】判断数组中是否包含指定元素

本文将介绍如何在Go语言中实现这一功能,并提供一个通用的函数IsContain,用于检查切片中是否包含指定的元素。

实现

下面是一个IsContain函数的实现,它可以检查intstring类型的切片是否包含特定的元素:

go 复制代码
package main
import "fmt"
func IsContain(items interface{}, item interface{}) bool {
	switch items.(type) {
	case []int:
		intArr := items.([]int)
		for _, value := range intArr {
			if value == item.(int) {
				return true
			}
		}
	case []string:
		strArr := items.([]string)
		for _, value := range strArr {
			if value == item.(string) {
				return true
			}
		}
	default:
		return false
	}
	return false
}
func main() {
	intArr := []int{1, 2, 3, 4, 5}
	strArr := []string{"apple", "banana", "cherry"}
	fmt.Println(IsContain(intArr, 3)) // 输出: true
	fmt.Println(IsContain(strArr, "banana")) // 输出: true
	fmt.Println(IsContain(intArr, 6)) // 输出: false
	fmt.Println(IsContain(strArr, "orange")) // 输出: false
}

这个函数通过类型断言来检查items参数的实际类型,并根据类型执行相应的循环和比较操作。如果传入的类型不是intstring切片,函数将返回false

结论

本文提供了一个Go语言的函数IsContain,用于检查一个切片是否包含特定的元素,适用于intstring类型的切片。

这个函数可以扩展功能,以支持更多的数据类型。

相关推荐
jc_hook3 小时前
IDEA之GO语言开发
golang·intellij-idea
Cisyam^9 小时前
Go环境搭建实战:告别Java环境配置的复杂
java·开发语言·golang
fured11 小时前
[调试][实现][原理]用Golang实现建议断点调试器
开发语言·后端·golang
NPE~12 小时前
[手写系列]Go手写db — — 第二版
开发语言·数据库·golang·教程·db·手写系列
好学且牛逼的马12 小时前
golang 10指针
开发语言·c++·golang
水墨熊猫19 小时前
【FIX】go运行报错“missing go.sum entry for module providing package”解决方案
golang·gin
孤雪心殇1 天前
如何安全,高效,优雅的提升linux的glibc版本
linux·后端·golang·glibc
techdashen2 天前
性能比拼: .NET (C#) vs. Fiber (Go)
golang·c#·.net
ALex_zry2 天前
Golang云端编程入门指南:前沿框架与技术全景解析
开发语言·后端·golang
好学且牛逼的马2 天前
golang13 单元测试
golang