MyTetra Share
Делитесь знаниями!
Циклы в Golang
Время создания: 10.11.2020 14:35
Автор: br0ke
Текстовые метки: go, golang, loop, for, iterate, iteration, break, continue, infinite
Раздел: Информационные технологии - Golang
Запись: and-semakin/mytetra_data/master/base/1605000942m8u7fscoh7/text.html на raw.githubusercontent.com

Единственной конструкцией для организации циклов в Go является for.


Его базовая форма выглядит следующим образом:


for [инициализация счетчика]; [условие]; [изменение счетчика]{

// действия

}


Любой из указанных выше трёх блоков можно опустить (но в таком случае нужно оставлять точки с запятой для указания на пустой блок).


Пример использования:


package main


import "fmt"


func main() {

sum := 0

for i := 1; i < 10; i++ {

sum += i

}

fmt.Println(sum)

}


Если цикл использует только блок условия, то можно опустить точки с запятой по краям:


var i = 1

for i < 10{

fmt.Println(i * i)

i++

}


Бесконечный цикл:


for {


}


Циклы можно прерывать при помощи break. Переход на следующую операцию производится при помощи continue. Оба этих оператора прерывают ближайший цикл (break также прерывает switch/case и select), но если нужно прервать какой-либо вышележащий цикл, то можно опционально передать имя метки:


RowLoop:

for y, row := range rows {

for x, data := range row {

if data == endOfRow {

continue RowLoop

}

row[x] = data + bias(x, y)

}

}


Имя метки должно быть записанно непосредственно перед заголовком цикла.

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования