iterator- все статьи тега ➜ страница 2


Как RecursiveIteratorIterator работает в PHP?

как RecursiveIteratorIterator работы? руководство PHP не имеет ничего документально или объяснено. В чем разница между IteratorIterator и RecursiveIteratorIterator? ...

Что такое отказоустойчивые и отказоустойчивые итераторы в Java [закрыто]

в Java есть два типа итераторов: fail-safe и fail-fast. Что это значит, и разница между ними? ...

Самый чистый способ получить последний элемент из итератора Python

каков наилучший способ получить последний элемент из итератора в Python 2.6? Например, скажем my_iter = iter(range(5)) каков самый короткий код / самый чистый способ получения 4 С my_iter? Я мог бы сделать это, но это не кажется очень эффективным: [x for x in my_iter][-1] ...

Как работает оператор enhanced for для массивов и как получить итератор для массива?

дан следующий фрагмент кода: int[] arr = {1, 2, 3}; for (int i : arr) System.out.println(i); У меня есть следующие вопросы: как работает выше для каждого цикла? как получить итератор для массива в Java? массив преобразуется в список, чтобы получить итератор? ...

Как написать цикл for в bash

Я ищу основной цикл, как: for(int i = 0; i < MAX; i++) { doSomething(i); } но для bash. ...

Java: добавление элементов в коллекцию во время итерации

можно ли добавлять элементы в коллекцию при итерации по ней? более конкретно, я хотел бы выполнить итерацию по коллекции, и если элемент удовлетворяет определенному условию, я хочу добавить некоторые другие элементы в коллекцию и убедиться, что эти добавленные элементы также повторяются. (Я понимаю, что это может привести к unterminating петли, но я уверен, что это не будет в моем случае.) на Java Tutorial от Солнца предполагает, что это невозможно: "обратите внимание, что Iterator.remove - Э ...

Когда не самое подходящее время для использования генераторов python?

это скорее наоборот для чего можно использовать функции генератора Python?: генераторы python, выражения генератора и itertools модуль-это некоторые из моих любимых функций python в эти дни. Они особенно полезны при настройке цепочек операций для выполнения на большой куче данных-я часто использую их при обработке файлов DSV. так когда же это не хорошее время для использования генератора, или выражения генератора, или ? когда я должен предпочесть zip() over itertools.izip() или range() over ...

Является ли" бесконечный " итератор плохим дизайном?

это как правило, считается плохой практикой, чтобы обеспечить Iterator реализации, которые являются "бесконечными"; т. е. где вызовы hasNext() всегда(*) возвращает true? обычно я бы сказал "Да", потому что вызывающий код может вести себя хаотично, но в реализации ниже hasNext() вернет true, если вызывающий объект не удалит все элементы из списка, с которым был инициализирован итератор; т. е. есть условие прекращения. Как вы думаете, это законно использование Iterator? Это не похоже на нарушен ...

Итератор кругового списка в Python

Мне нужно перебирать круговой список, возможно, много раз, каждый раз, начиная с последнего посещенного элемента. прецедент-это пул соединений. Клиент запрашивает соединение, итератор проверяет, доступно ли указанное соединение, и возвращает его, в противном случае циклы до тех пор, пока он не найдет то, что доступно. есть аккуратный способ сделать это в Python? ...

Что быстрее, повторяя вектор STL с помощью vector:: iterator или с помощью at()?

С точки зрения производительности, что будет работать быстрее? Есть ли разница? Это зависит от платформы? //1. Using vector<string>::iterator: vector<string> vs = GetVector(); for(vector<string>::iterator it = vs.begin(); it != vs.end(); ++it) { *it = "Am I faster?"; } //2. Using size_t index: for(size_t i = 0; i < vs.size(); ++i) { //One option: vs.at(i) = "Am I faster?"; //Another option: vs[i] = "Am I faster?"; } ...

Возврат указателя на векторный элемент в c++

у меня есть вектор myObjects в глобальном масштабе. У меня есть метод, который использует std::vector<myObject>::const_iterator чтобы пересечь вектор и сделать некоторые сравнения, чтобы найти конкретный элемент. Как только я нашел нужный элемент, я хочу иметь возможность вернуть указатель на него (вектор существует в глобальной области видимости). Если я вернусь &iterator, Я возвращаю адрес итератора или адрес того, на что указывает итератор? мне нужно бросить const_iterator вернуть ...

Почему определение метода getitem на классе сделать метод в Python?

почему определение _ _ getitem__ в классе делает его итерационным? например, если я напишу: class b: def __getitem__(self, k): return k cb = b() for k in cb: print k Я получаю вывод: 0 1 2 3 4 5 6 7 8 ... Я действительно ожидал бы увидеть ошибку, возвращенную из "for k in cb:" ...

Проверить, если итератор действует

есть ли способ проверить, является ли итератор (будь то из вектора, списка, дека...) (все-таки) уникальным, т. е. не была признана недействительной? Я использую try -catch, но есть ли более прямой способ сделать это? пример: (который не работает) list<int> l; for (i = 1; i<10; i++) { l.push_back(i * 10); } itd = l.begin(); itd++; if (something) { l.erase(itd); } /* now, in other place.. check if itd points to somewhere meaningful */ if (itd != l.end()) { // blablabla ...

Итерационные объекты и тип массива намекают?

у меня есть много функций, которые либо имеют тип намека на массивы, либо используют is_array() для проверки массивности переменной. теперь я начинаю использовать объекты, которые являются итерационными. Они реализуют Iterator или IteratorAggregate. Будут ли они приниматься как массивы, если они проходят через намек типа или проходят is_array()? если мне нужно изменить мой код, есть общий вид is_iterable(), или я должен сделать что-то вроде: if ( is_array($var) OR $var instance_of Iterable ...

Что такое значение итератора по умолчанию?

для любого контейнера STL, который я использую, если я объявляю итератор (этого конкретного типа контейнера) с помощью конструктора по умолчанию итератора, к чему будет инициализирован итератор? например, у меня есть: std::list<void*> address_list; std::list<void*>::iterator iter; для чего будет инициализирован iter? ...