mirror of
https://github.com/e1732a364fed/v2ray_simple.git
synced 2025-12-24 13:27:56 +08:00
修订代码
This commit is contained in:
@@ -45,15 +45,13 @@ func AllSubSets_improve1[T comparable](set []T) (subsets [][]T) {
|
||||
return subsets
|
||||
}
|
||||
|
||||
func CopySlice[T any](a []T) (r []T) {
|
||||
func DuplicateSlice[T any](a []T) (r []T) {
|
||||
r = make([]T, len(a))
|
||||
for i, v := range a {
|
||||
r[i] = v
|
||||
}
|
||||
copy(r, a)
|
||||
return
|
||||
}
|
||||
|
||||
//会直接改动原slice数据
|
||||
// TrimSlice 从一个slice中移除一个元素, 会直接改动原slice数据
|
||||
func TrimSlice[T any](a []T, deleteIndex int) []T {
|
||||
j := 0
|
||||
for idx, val := range a {
|
||||
|
||||
@@ -12,14 +12,14 @@ var x = []string{"AA", "BB", "CC", "DD"}
|
||||
var y = []int{1, 2, 3, 4}
|
||||
|
||||
func TestSplice(t *testing.T) {
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(x), 0))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(x), 1))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(x), 2))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(x), 3))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(y), 0))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(y), 1))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(y), 2))
|
||||
t.Log(utils.TrimSlice(utils.CopySlice(y), 3))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(x), 0))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(x), 1))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(x), 2))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(x), 3))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(y), 0))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(y), 1))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(y), 2))
|
||||
t.Log(utils.TrimSlice(utils.DuplicateSlice(y), 3))
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -17,6 +17,7 @@ func init() {
|
||||
rand.Seed(time.Now().Unix())
|
||||
}
|
||||
|
||||
// bufio.Reader 和 bytes.Buffer 都实现了 ByteReader
|
||||
type ByteReader interface {
|
||||
ReadByte() (byte, error)
|
||||
Read(p []byte) (n int, err error)
|
||||
|
||||
Reference in New Issue
Block a user