title: Golang语言中for循环的常用案例演示
date: 2022-12-29 16:38:30.0
updated: 2022-12-29 16:38:30.0
url: https://liumou.site/doc/589
categories:

  • GO
    tags:
  • Go

package main

import (
    "container/list"
    "fmt"
    "github.com/spf13/cast"
    "strings"
)

// For1 第一种:对切片进行遍历
func For1() {
    fmt.Println("对切片进行遍历")
    sub := "10.1.1.18"
    s := strings.Split(sub, ".") // 对IP地址进行切片处理
    for index, value := range s {
        sprintf := fmt.Sprintf("第[ %d ]个元素值: %s", index, value) // 格式化字符串
        fmt.Println(sprintf)                                    // 输出格式化后的字符串内容
    }
}

// For2 第二种: 设置范围进行i++
func For2() {
    fmt.Println("范围循环")
    sub := "10.1.1."
    for i := 1; i <= 3; i++ {
        ip := sub + cast.ToString(i)
        fmt.Println(ip)
    }
    // 另一种写法(其实只是把初始值从for语句中提取到前面,++放到里面而已)
    n := 1
    for n <= 3 {
        fmt.Println(n)
        n++
    }
}

// For3 第三种:对列表进行遍历
func For3() {
    var ls list.List // 定义一个列表变量
    ls.PushBack("刘德华")
    ls.PushBack("张学友")
    for i := ls.Front(); i != nil; i = i.Next() {
        fmt.Println(i.Value)    // 打印列表的值
    }
}
func main() {
    For1()
    For2()
    For3()
}

效果如下

对切片进行遍历
第[ 0 ]个元素值: 10
第[ 1 ]个元素值: 1 
第[ 2 ]个元素值: 1 
第[ 3 ]个元素值: 18
范围循环           
10.1.1.1           
10.1.1.2           
10.1.1.3           
1                  
2                  
3                  
刘德华             
张学友