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 }