go语言中在两个切片、数组中查找共性(交集)的示例代码
Go  /  管理员 发布于 3年前   868
下面介绍两个切片或数组中查找共性交集示例的方法
方法1:
//切片交集1
a := []string{"Hello", "No", "Zongscan"}
b := []string{"Hello", "Yes", "Zongscan"}
d := []string{}
for i := range a {
    if a[i] == b[i] {
        d = append(d, a[i])
    }
}
fmt.Println("共性交集1: ", d)方法2:
// 切片交集2
a_one := []string{"Hello", "No", "Zongscan"}
b_two := []string{"Hello", "Yes", "Zongscan"}
d2 := []string{}
for _, v1 := range a_one {
    isAdd := false
    
    for _, v2 := range b_two {
        if v1 == v2 {
            isAdd = true
        }
    }
    
    if isAdd {
        d2 = append(d2, v1)
    }
    
}
fmt.Println("共性交集2: ", d2)完整测试代码:
package controllers
import (
	"fmt"
)
// TestController  is a test control
type TestController struct {
	//beego.Controller
	BaseController
}
func (c *TestController) Aaa() {
	//两个切片或数组中查找共性交集示例
	// 切片交集ces1
	a := []string{"Hello", "No", "Zongscan"}
	b := []string{"Hello", "Yes", "Zongscan"}
	d := []string{}
	for i := range a {
		if a[i] == b[i] {
			d = append(d, a[i])
		}
	}
	fmt.Println("共性交集1: ", d)
	// 切片交集ces2
	a_one := []string{"Hello", "No", "Zongscan"}
	b_two := []string{"Hello", "Yes", "Zongscan"}
	d2 := []string{}
	for _, v1 := range a_one {
		isAdd := false
		for _, v2 := range b_two {
			if v1 == v2 {
				isAdd = true
			}
		}
		if isAdd {
			d2 = append(d2, v1)
		}
	}
	fmt.Println("共性交集2: ", d2)
}效果图:

122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
			Copyright·© 2019 侯体宗版权所有·
			粤ICP备20027696号
			
			
