mathUtils.go 674 B

12345678910111213141516171819202122232425262728
  1. package utils
  2. import (
  3. "math"
  4. "sort"
  5. "strconv"
  6. )
  7. // FormatFloat 保留指定小数位并返回字符串
  8. func FormatFloat(num float64, decimal int) string {
  9. // 默认乘1
  10. d := float64(1)
  11. if decimal > 0 {
  12. // 10的N次方
  13. d = math.Pow10(decimal)
  14. }
  15. // math.trunc作用就是返回浮点数的整数部分
  16. // 再除回去,小数点后无效的0也就不存在了
  17. return strconv.FormatFloat(math.Trunc(num*d)/d, 'f', -1, 64)
  18. }
  19. // SortInIntSlice 判断int是否包含于数组中
  20. func SortInIntSlice(haystack []int, needle int) bool {
  21. sort.Ints(haystack)
  22. index := sort.SearchInts(haystack, needle)
  23. return index < len(haystack) && haystack[index] == needle
  24. }