index.go
1.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package lxarray
// InArray 判断字符串在数组内
func InArray(s string, d []string) bool {
for _, v := range d {
if s == v {
return true
}
}
return false
}
// SplitArray sources源数组,num拆分份数,size每份的大小
func SplitArray(sources []string, num, pageSize int64) [][]string {
max := int64(len(sources))
if max < num {
return nil
}
var segmens = make([][]string, 0)
quantity := pageSize
end := int64(0)
for i := int64(1); i <= num; i++ {
qu := i * quantity
if i != num {
segmens = append(segmens, sources[i-1+end:qu])
} else {
segmens = append(segmens, sources[i-1+end:])
}
end = qu - i
}
return segmens
}
// SplitArrayCnt sourceslen源数组长度,pageSize页数据量
func SplitArrayCnt(sourceslen, pageSize int) int {
if sourceslen < pageSize {
return 1
}
s := sourceslen / pageSize
y := sourceslen % pageSize
if y > 0 {
return s + 1
} else {
return s
}
}
// DeleteRepeatString 数组去重
func DeleteRepeatString(arr []string) []string {
// 创建一个新的切片,用于存储去重后的元素
result := make([]string, 0, len(arr))
// 遍历原始数组
for _, item := range arr {
// 如果元素不在结果切片中,则将其添加到结果切片中
if !containsString(result, item) {
result = append(result, item)
}
}
return result
}
func containsString(arr []string, se string) bool {
// 遍历结果切片
for _, n := range arr {
// 如果找到匹配的元素,则返回 true
if n == se {
return true
}
}
return false
}