Go Keyword range: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 6: | Line 6: | ||
=Overview= | =Overview= | ||
<tt>range</tt> keyword is used to iterate over arrays, slices, maps and [[Go_Concepts_-_Functions#Varidic_Functions|variadic function arguments]]. It returns two values. On the first position is the index/kyes, and the second position is the value. | <tt>range</tt> keyword is used to iterate over strings, arrays, slices, maps, channels and [[Go_Concepts_-_Functions#Varidic_Functions|variadic function arguments]]. It returns two values. On the first position is the index/kyes, and the second position is the value. | ||
<blockquote style="background-color: Gold; border: solid thin Goldenrod;"> | <blockquote style="background-color: Gold; border: solid thin Goldenrod;"> |
Revision as of 00:04, 3 April 2016
Internal
Overview
range keyword is used to iterate over strings, arrays, slices, maps, channels and variadic function arguments. It returns two values. On the first position is the index/kyes, and the second position is the value.
- Note that only a first identifier is declared, that is the index and not the value, as the intuition would suggest. See examples below.
Iterating over Indices
var a [5]int for i := range a { // i is the index }
Iterating over Values
var a [5]int for _, value := range a { // 'value' is the value }
Iterating over Indices and Values
var a [5]int for i, value := range a { // i is the index // 'value' is the value }