знаю, что pairs обходить все элементы таблицы, а ipairs лучше для числовых. Но возникает вопрос, как обходит ipairs таблицу и как выводит ключ?
допустим есть
Table={[1]=0,[10]=8,etc...}
если перебирать таблицу через
for key in ipairs (Table) do
end
то ключи будут показывать 1-2-3-etc или 1-10-etc ?

Принятый ответ

то ключи будут показывать 1-2-3-etc или 1-10-etc ?
Нет, ipairs берёт ключи с шагом 1, начиная с 1 и заканчивая первым ключом со значением nil (то есть ключа нет), не включая этот ключ.
Table = {[2] = 0, [10] = 8}
for key, value in ipairs(Table) do
    print(key, value)
end
Тут будет пустой вывод.
Table = {[1] = 0, [10] = 8}
for key, value in ipairs(Table) do
    print(key, value)
end
Тут выведется только (1, 0).

Такие вопросы проще самом ответить воспользовавшись гуглом, онлайн-компилятором или самой игрой.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2 комментария удалено
2
29
4 года назад
Отредактирован PT153
2
есть время сидеть в браузере, сидите здесь - www.lua.org/cgi-bin/demo
третья ссылка в гугле - stackoverflow.com/questions/55108794/what-is-the-difference-of-p...
3 комментария удалено
3
28
4 года назад
Отредактирован PT153
3
то ключи будут показывать 1-2-3-etc или 1-10-etc ?
Нет, ipairs берёт ключи с шагом 1, начиная с 1 и заканчивая первым ключом со значением nil (то есть ключа нет), не включая этот ключ.
Table = {[2] = 0, [10] = 8}
for key, value in ipairs(Table) do
    print(key, value)
end
Тут будет пустой вывод.
Table = {[1] = 0, [10] = 8}
for key, value in ipairs(Table) do
    print(key, value)
end
Тут выведется только (1, 0).

Такие вопросы проще самом ответить воспользовавшись гуглом, онлайн-компилятором или самой игрой.
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.