Как ограничить количество циклов прохождения структуры в Go? [закрыто]
Я пытаюсь пройти только десять раз, прежде чем остановиться. Моя внешность
type Book struct {
Id string
Title string
}
и код, который будет проходить через все это, -
var books []Book;
for _, book := range books {
fmt.Println(book.Id + " " + book.Title);
}
Я пробовал использовать отдельный цикл for, который будет повторяться десять раз, но он прошел всего десять раз или выполнил одну часть
Struct
десять раз.
1 ответ
Как упоминал Джим в разделах комментариев, вы перебираете все книги, объявленные в строке ранее, что, кстати, является пустым фрагментом (так что вы вообще не будете зацикливаться).
Хотя в цикле for по диапазону первым аргументом является индекс текущего элемента. С тем, что вы можете исправить условие в своем цикле, чтобы выйти из него, если вы превысите свой произвольный предел
// books is a slice of Book -> []Book
for i, book := range books {
// If you are on the eleventh element of your slice
if i == 10 {
// leave the loop
break
}
// Do whatever you want with book
}