Как ограничить количество циклов прохождения структуры в 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
}
Другие вопросы по тегам