【问题标题】:Loop through an array in vlang循环遍历 vlang 中的数组
【发布时间】:2019-11-18 23:54:51
【问题描述】:

如何在 v 编程语言中遍历字符串数组?
例如: langs := ['python', 'java', 'javascript']

【问题讨论】:

标签: loops vlang


【解决方案1】:

V 只有一个循环结构:for
为了循环数组langs,你需要使用for循环。

langs := ['python', 'java', 'javascript']
for lang in langs {
    println(lang)
}

for value in loop 用于遍历数组的元素。如果需要索引,可以使用替代形式for index, value in

【讨论】:

    【解决方案2】:

    方法一:带索引的for循环

    langs := ['python', 'java', 'javascript']
    
    for i, lang in langs {
        println('$i) $lang')
    }                             
    

    方法一输出:

    0) python
    1) java
    2) javascript
    

    在 vlang 的操场上尝试方法 1 here

    方法二:无索引的for循环

    langs := ['python', 'java', 'javascript']
    
    for lang in langs {
        println(lang)
    }      
    

    方法二输出:

    python
    java
    javascript
    

    在 vlang 的操场上尝试方法 2 here

    方法3:在V Lang中使用for的while循环样式迭代 你也可以这样做。以下循环类似于其他语言中的while循环。

    mut num := 0
    langs := ['python', 'java', 'javascript']
    
    for{
        if num < langs.len {
            println(langs[num])
        }
        else{
            break
        }
        num++
    }
    

    方法三输出:

    python
    java
    javascript
    

    在 vlang 的操场上尝试方法 3 here

    方法4:通过访问数组的索引来循环遍历数组元素

    langs := ['python', 'java', 'javascript']
    
    mut i := 0
    for i < langs.len {
        println(langs[i])
        i++
    }
    

    方法四输出:

    python
    java
    javascript
    

    在 V lang 的操场上尝试方法 4 here

    方法 5:传统 C 样式循环

    正如 @Astariul 在 cmets 中所建议的那样

    langs := ['python', 'java', 'javascript']
    
    for i := 0; i < langs.len; i++ {
        println(langs[i])
    }
    

    方法五输出:

    python
    java
    javascript
    

    在 V lang 的操场上尝试方法 5 here

    您可以查看此播放列表以获得更有趣的vlang tutorials

    【讨论】:

    • 注意:你也可以使用 C 风格的循环(遍历数组的索引)
    • @Astariul,将其添加为方法 4。希望这是您的建议
    • 我更多的是考虑在循环中声明 i 的循环 (for i := 0; i &lt; langs.len; i++),如 documentation of V 中所述。但这一个也有效^^感谢您更新答案:)
    猜你喜欢
    • 2014-06-04
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 2013-05-15
    • 2018-01-20
    • 1970-01-01
    相关资源
    最近更新 更多