go切片和map比较

简介: go切片和map比较

切片和map使用==只能和nil比较,相互比较可以使用reflect.DeepEqual(a,b)

import (
  "reflect"
  "testing"
)
 
func TestDeepEqual(t *testing.T) {
  a := map[int]string{1: "one", 2: "two", 3: "three"}
  b := map[int]string{1: "one", 2: "two", 3: "three"}
  //t.Log(a == b)
  t.Log(reflect.DeepEqual(a, b))
  s1 := []int{1, 2, 3}
  s2 := []int{1, 2, 3}
  s3 := []int{2, 3, 1}
  t.Log(reflect.DeepEqual(s1, s2))
  t.Log(reflect.DeepEqual(s1, s3))
}
目录
相关文章
|
7天前
|
Go
Go 中使用切片来实现动态数组的功能
Go 中使用切片来实现动态数组的功能
|
11天前
|
存储 安全 测试技术
【Go语言精进之路】构建高效Go程序:了解map实现原理并高效使用
【Go语言精进之路】构建高效Go程序:了解map实现原理并高效使用
25 3
|
3天前
|
Go
go语言map、实现set
go语言map、实现set
10 0
|
3天前
|
Go
go语言数组与切片
go语言数组与切片
13 0
|
7天前
|
缓存 安全 算法
Go 中使用 map 实现高效的数据缓存
Go 中使用 map 实现高效的数据缓存
|
7天前
|
存储 缓存 安全
Go 中使用 map 实现高效的数据查找和更新
Go 中使用 map 实现高效的数据查找和更新
|
7天前
|
Go
Go 语言是如何实现切片扩容
Go 语言是如何实现切片扩容
|
7天前
|
存储 Go PHP
Go的切片:长度和容量
Go的切片:长度和容量
|
3天前
|
Dart
Dart之集合详解(List、Set、Map)
Dart之集合详解(List、Set、Map)
9 1
|
8天前
|
存储 JavaScript 前端开发
JavaScript进阶-Map与Set集合
【6月更文挑战第20天】JavaScript的ES6引入了`Map`和`Set`,它们是高效处理集合数据的工具。`Map`允许任何类型的键,提供唯一键值对;`Set`存储唯一值。使用`Map`时,注意键可以非字符串,用`has`检查键存在。`Set`常用于数组去重,如`[...new Set(array)]`。了解它们的高级应用,如结构转换和高效查询,能提升代码质量。别忘了`WeakMap`用于弱引用键,防止内存泄漏。实践使用以加深理解。