«iterator» 태그된 질문

이터레이터는 객체 지향 프로그래밍 패턴으로, 실제 메모리의 실제 구현 또는 객체 주소에 관계없이 컬렉션을 통과 할 수 있습니다. 그것은 Gang of Four의 행동 디자인 패턴 중 하나입니다.

11
'for'루프를 사용하여 C ++ 벡터를 반복
저는 C ++ 언어를 처음 사용합니다. 나는 벡터를 사용하기 시작했으며 모든 코드에서 인덱스를 통해 벡터를 반복하는 것으로 보았을 때 for루프 의 첫 번째 매개 변수 는 항상 벡터를 기반으로하는 것입니다. Java에서는 ArrayList를 사용하여 이와 같은 작업을 수행 할 수 있습니다. for(int i=0; i < vector.size(); i++){ vector[i].doSomething(); } C ++에서 …

5
node.js에서 객체 키를 반복
Javascript 1.7부터 Iterator 객체가 있습니다. var a={a:1,b:2,c:3}; var it=Iterator(a); function iterate(){ try { console.log(it.next()); setTimeout(iterate,1000); }catch (err if err instanceof StopIteration) { console.log("End of record.\n"); } catch (err) { console.log("Unknown error: " + err.description + "\n"); } } iterate(); node.js에 이와 같은 것이 있습니까? 지금 나는 사용하고 있습니다 : function …


3
Iterator와 Listiterator의 차이점은 무엇입니까?
Iterator ite = Set.iterator(); Iterator ite = List.iterator(); ListIterator listite = List.listIterator(); Iteratora Set또는 a List또는 a 를 횡단하는 데 사용할 수 있습니다 Map. 그러나 ListIterator를 통과하는 데만 사용할 수 있으며 a를 통과 List할 수는 없습니다 Set. 왜? 주요 차이점은 반복자를 사용하면 한 방향으로 만 ListIterator여행 할 수 있지만 양방향으로 …


12
Typescript 맵 반복
타이프 스크립트 맵을 반복하려고하는데 계속 오류가 발생하고 사소한 문제에 대한 해결책을 아직 찾을 수 없습니다. 내 코드는 다음과 같습니다. myMap : Map<string, boolean>; for(let key of myMap.keys()) { console.log(key); } 그리고 오류가 발생합니다. 'IterableIteratorShim <[string, boolean]>'유형은 배열 유형 또는 문자열 유형이 아닙니다. 전체 스택 추적 : Error: Typescript found the …

3
처음부터 끝까지 반복하는 동안지도 요소에서 erase ()를 호출하면 어떻게됩니까?
다음 코드에서는 맵을 반복하고 요소를 지워야하는지 테스트합니다. 요소를 지우고 계속 반복하는 것이 안전합니까 아니면 다른 컨테이너에서 키를 수집하고 두 번째 루프를 수행하여 erase ()를 호출해야합니까? map<string, SerialdMsg::SerialFunction_t>::iterator pm_it; for (pm_it = port_map.begin(); pm_it != port_map.end(); pm_it++) { if (pm_it->second == delete_this_id) { port_map.erase(pm_it->first); } } 업데이트 : 물론, 나는 관련이 …
133 c++  stl  iterator 


7
두 배열을 한 번에 반복하는 '루비 방식'이란 무엇입니까
해결해야 할 문제보다 구문 호기심이 더 많습니다 ... 길이가 같은 두 개의 배열이 있으며 두 인덱스를 한 번에 반복하여 두 인덱스를 모두 특정 인덱스에 출력하려고합니다. @budget = [ 100, 150, 25, 105 ] @actual = [ 120, 100, 50, 100 ] 다음 each_index과 같이 배열을 사용 하고 색인을 생성 할 …
127 ruby  arrays  iterator 

5
목록을 반복하는 것이 색인을 생성하는 것보다 빠른 이유는 무엇입니까?
ADT 목록에 대한 Java 문서를 읽으면 다음과 같이 말합니다. List 인터페이스는 목록 요소에 대한 위치 (인덱싱) 액세스를위한 네 가지 방법을 제공합니다. 목록 (예 : Java 배열)은 0부터 시작합니다. 이러한 작업은 일부 구현 (예 : LinkedList 클래스)의 인덱스 값에 비례하여 시간에 따라 실행될 수 있습니다. 따라서 호출자가 구현을 알지 못하는 경우 …
125 java  list  iterator 


6
문자열의 줄을 반복합니다.
다음과 같이 정의 된 여러 줄 문자열이 있습니다. foo = """ this is a multi-line string. """ 이 문자열은 내가 쓰고있는 파서의 테스트 입력으로 사용했습니다. 파서 함수는 file입력 으로 -object를 수신 하고 반복합니다. 또한 next()줄을 건너 뛰기 위해 메서드를 직접 호출 하므로 반복자가 아닌 입력으로 반복기가 필요합니다. file-object가 텍스트 파일의 …
119 python  string  iterator 

7
무한 생성기에 대한 표현이 있습니까?
무한한 요소를 생성 할 수있는 간단한 생성기 표현식이 있습니까? 이것은 순전히 이론적 인 질문입니다. 여기에 "실용적인"대답이 필요 없습니다. :) 예를 들어, 유한 제너레이터를 만드는 것은 쉽습니다. my_gen = (0 for i in xrange(42)) 그러나 무한한 것을 만들려면 내 네임 스페이스를 가짜 함수로 "오염"시켜야합니다. def _my_gen(): while True: yield 0 my_gen …

7
스칼라를 아래로 또는 감소시키는 for 루프?
Scala에서는 반복자를 사용하여 for다음과 같이 증가하는 순서 로 루프 를 수행하는 경우가 많습니다 . for(i <- 1 to 10){ code } 10에서 1로 어떻게 하시겠습니까? 10 to 1빈 반복자를 제공 한다고 생각 합니다 (일반적인 범위 수학처럼)? 반복자에서 reverse를 호출하여 문제를 해결하는 Scala 스크립트를 만들었지 만 내 의견으로는 좋지 않습니다. 다음 …

9
두 개 이상의 컨테이너를 동시에 반복하는 가장 좋은 방법은 무엇입니까?
C ++ 11은 컨테이너를 반복하는 여러 방법을 제공합니다. 예를 들면 : 범위 기반 루프 for(auto c : container) fun(c) std :: for_each for_each(container.begin(),container.end(),fun) 그러나 같은 크기의 두 개 이상의 컨테이너를 반복하여 다음과 같은 작업을 수행하는 데 권장되는 방법은 무엇입니까? for(unsigned i = 0; i < containerA.size(); ++i) { containerA[i] = …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.