数据量较少的情况

    1. package main
    2. import "fmt"
    3. func main() {
    4. // 顺序查找
    5. arr := [4]string{"路飞", "索隆", "山治", "甚平"}
    6. var name string
    7. fmt.Println("请输入名字查找")
    8. fmt.Scanln(&name)
    9. // 第一种方式,直接输出结果
    10. for i := 0; i < len(arr); i++ {
    11. if arr[i] == name {
    12. fmt.Printf("找到%s了,是第%v个\n", name, i)
    13. break
    14. } else if i == len(arr)-1 {
    15. fmt.Printf("没有找到%s", name)
    16. }
    17. }
    18. // 上面的写法看起来 思路不是很清晰,代码不是很优雅,
    19. // 第二种方式
    20. // 定义下标, 找到之后,重新赋值下标,没有则是-1
    21. index := -1
    22. for i := 0; i < len(arr); i++ {
    23. if arr[i] == name {
    24. index = i
    25. break
    26. }
    27. }
    28. if index != -1 {
    29. fmt.Printf("找到%s了,是第%v个\n", name, index)
    30. } else {
    31. fmt.Printf("没有找到%s", name)
    32. }
    33. }