Go兩個任意型別的Slice比較實現

2021-08-15 22:42:23 字數 777 閱讀 9063

sliceequals 用以比較兩個slice(基礎資料型別,如int)內含值是否相等
--------------------------------compare.go---------------------------------

package compare

import

"reflect"

// sliceequals 用以比較兩個slice(基礎資料型別,如int)內含值是否相等

func sliceequals(a, b inte***ce{}) bool

_b := reflect.valueof(b)

if _b.kind() != reflect.slice

// 長度不等則兩個slice不同

if _a.len() != _b.len()

// 依次比較每個值

for i := 0; i < _a.len(); i++

}return

true

}

-------------------------------compare_test.go-----------------------------

package compare

import (

"testing"

)func testarrequals(t *testing.t)

s2 := string

if !sliceequals(s1, s2)

}

兩個矩形的交並比(IOU)

由於最近的專案裡面要用到,雖然是個小東西,但還是來記錄一下.現在我們知道矩形t的左下角座標 x0,y0 右上角座標 x1,y1 矩形g的左下角座標 a0,b0 右上角座標 a1,b1 這裡我們可以看到area roit 跟arae roig 在確定座標而不確定兩個矩形是否相交的情況下,為已知的常量 ...

go學習筆記 4 比較兩個型別相等

字串比較方法 1 逐個比較且不分大小寫,相等返回true,不相等返回false fmt.println 你好 你好 true fmt.println sa sa true fmt.println sa sa false 2 strings.equalfold 區分utf 8字元在忽略大小寫的情況下是...

任意長度的兩個正整數相乘

兩個大數相乘 char multiply char char 給了兩個字串,每個都是代表了乙個很長的10進製表示的數,比如 string str1 23456789009877666555544444 string str2 346587436598437594375943875943875 最後求...