handle_array.go 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package mokuai
  2. import "fmt"
  3. // 删除数组/切片中的指定位置的元素
  4. func Array_DelIndex(array []string, i int) []string {
  5. a := append(array[:i], array[i+1])
  6. return a
  7. }
  8. // 判断元素是否在数组中存在
  9. func Array_InArray(one interface{}, arr interface{}) bool {
  10. switch arr.(type) {
  11. case []string:
  12. tmp := map[string]string{}
  13. a := one.(string)
  14. b := arr.([]string)
  15. blen := len(b)
  16. for i := 0; i < blen; i++ {
  17. tmp[b[i]] = "ok"
  18. }
  19. if tmp[a] == "ok" {
  20. return true
  21. }
  22. break
  23. case []int:
  24. tmp := map[int]string{}
  25. a := one.(int)
  26. b := arr.([]int)
  27. blen := len(b)
  28. for i := 0; i < blen; i++ {
  29. tmp[b[i]] = "ok"
  30. }
  31. if tmp[a] == "ok" {
  32. return true
  33. }
  34. break
  35. case []float32:
  36. tmp := map[float32]string{}
  37. a := one.(float32)
  38. b := arr.([]float32)
  39. blen := len(b)
  40. for i := 0; i < blen; i++ {
  41. tmp[b[i]] = "ok"
  42. }
  43. if tmp[a] == "ok" {
  44. return true
  45. }
  46. break
  47. case []float64:
  48. tmp := map[float64]string{}
  49. a := one.(float64)
  50. b := arr.([]float64)
  51. blen := len(b)
  52. for i := 0; i < blen; i++ {
  53. tmp[b[i]] = "ok"
  54. }
  55. if tmp[a] == "ok" {
  56. return true
  57. }
  58. break
  59. default:
  60. fmt.Println("暂时不支持的类型")
  61. return false
  62. }
  63. return false
  64. }