GO語言常用工具類收藏

2021-10-02 05:05:09 字數 1367 閱讀 6734

1、擷取字串

//擷取字串 start 起點下標 length 需要擷取的長度

func substr(str string, start int, length int) string

end = start + length

if start > end

if start < 0

if start > rl

if end < 0

if end > rl

return string(rs[start:end])

}

子串在字串出現的位置

func unicodelastindex(str,substr string) int 

return result

}func unicodeindex(str,substr string) int

return result

}

tcp粘包和拆包解決辦法

func encode(message string)(byte ,error)

//把要傳送的訊息寫入到緩衝區

err = binary.write(pkg,binary.bigendian,byte(message))

if err != nil

//返回已經寫好的byte陣列

return pkg.bytes(),nil

}func decode(reader *bufio.reader)(string,error)

//如果總的位元組數 <= length + 4,說明資料讀取錯誤

if int32(reader.buffered()) < length + 4

//讀取全部的資料

peak := make(byte,int(4+length))

_, err = reader.read(peak)

if err != nil

//返回除了前四位的資料

return string(peak[4:]),nil

}

int和byte的相互轉換

func inttobytes(n int) byte )

binary.write(bytebuf, binary.bigendian, data)

return bytebuf.bytes()

}func bytestoint(bys byte) int

常用工具類

本講內容 常用工具類 陸續更新 author administrator public static context context public void oncreate public static context getcontext 2 提供所有activity呼叫 基類 author ad...

常用工具類

reflectionutils objectutils public static void main string args 判斷兩個陣列是否相等 system.out.println arrays.equals arr,arr true 列印陣列 string s1 arrays.tostrin...

常用工具類 作業

1.生成10個 10,23 之間的隨機整數 random 類的nextdouble 或nextint 實現public class randomdemo for int i 1 i 10 i 1.以樹狀結構輸出計算機某個指定資料夾下的所有的檔案和子資料夾名稱。public class filedem...