«iterator» etiketlenmiş sorular

Yineleyici, fiziksel bellekteki gerçek uygulamadan veya nesne adreslerinden bağımsız olarak bir koleksiyonda geçişe izin veren nesne yönelimli bir programlama modelidir. Dörtlü Çetenin davranışsal tasarım modellerinden biridir.

11
'For' döngüsü kullanarak C ++ Vector üzerinden yineleme
C ++ dilinde yeniyim. Vektörleri kullanmaya başladım ve tüm kodlarda, indeksler yoluyla bir vektör olsa da yinelemeyi gördüğümü fark ettim, fordöngünün ilk parametresi her zaman vektörü temel alan bir şeydir. Java bir ArrayList ile böyle bir şey yapabilir: for(int i=0; i < vector.size(); i++){ vector[i].doSomething(); } Bunu C ++ 'da …

5
Node.js dosyasındaki nesne anahtarları üzerinden yineleme
Javascript 1.7'den beri buna izin veren bir Iterator nesnesi var : 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'de böyle bir şey var …


3
Yineleyici ve Listiterator arasındaki fark nedir?
Iterator ite = Set.iterator(); Iterator ite = List.iterator(); ListIterator listite = List.listIterator(); IteratorA Setveya a Listveya a arasında geçiş yapmak için kullanabiliriz Map. Ama ListIteratorsadece a'yı geçmek için kullanılabilir, a'yı Listgeçemez Set. Neden? Temel farkın, yineleyici ile sadece bir yönde ListIteratorseyahat edebileceğimizi, ancak her iki yönde de seyahat edebileceğimizi biliyorum. …


12
TypeCript Haritası Üzerinde Yineleme
Bir daktilo haritası üzerinde yinelemeye çalışıyorum, ancak hata almaya devam ediyorum ve bu kadar önemsiz bir soruna henüz bir çözüm bulamadım. Benim kodum: myMap : Map<string, boolean>; for(let key of myMap.keys()) { console.log(key); } Ve Hatayı alıyorum: 'IterableIteratorShim <[string, boolean]> yazın' bir dizi türü veya bir dize türü değil. Tam …

3
Baştan sona yineleme sırasında bir harita öğesinde erase () öğesini çağırırsanız ne olur?
Aşağıdaki kodda bir harita boyunca döngü yapıyorum ve bir elemanın silinmesi gerekip gerekmediğini test ediyorum. Elemanı silmek ve yinelemeyi sürdürmek güvenli mi yoksa anahtarları başka bir kapta toplamam ve silmeyi () çağırmak için ikinci bir döngü yapmam gerekir mi? map<string, SerialdMsg::SerialFunction_t>::iterator pm_it; for (pm_it = port_map.begin(); pm_it != port_map.end(); pm_it++) …
133 c++  stl  iterator 


7
Aynı anda iki diziyi yinelemenin 'Ruby yolu' nedir?
Çözülmesi gereken bir problemden çok sözdizimi merakı ... Eşit uzunlukta iki dizim var ve her ikisini de aynı anda yinelemek istiyorum - örneğin, her iki değerini de belirli bir dizinde çıkarmak için. @budget = [ 100, 150, 25, 105 ] @actual = [ 120, 100, 50, 100 ] each_indexDizileri şu …
127 ruby  arrays  iterator 

5
Neden bir Listeyi yinelemek, onu indekslemekten daha hızlı olsun?
ADT Listesi için Java belgelerini okurken şunu söylüyor: Liste arabirimi, liste öğelerine konumsal (indeksli) erişim için dört yöntem sağlar. Listeler (Java dizileri gibi) sıfır tabanlıdır. Bu işlemlerin, bazı uygulamalar için (örneğin LinkedList sınıfı) dizin değeriyle orantılı olarak zaman içinde yürütülebileceğini unutmayın. Bu nedenle, arayan kişi uygulamayı bilmiyorsa, bir listedeki öğeler …
125 java  list  iterator 


6
Bir dizenin satırlarını yineleyin
Şu şekilde tanımlanmış çok satırlı bir dizem var: foo = """ this is a multi-line string. """ Yazdığım bir ayrıştırıcı için test girdisi olarak kullandığımız bu dizge. Ayrıştırıcı işlevi, filegirdi olarak bir nesneyi alır ve üzerinde yineler. Ayrıca, next()doğrudan satırları atlamak için yöntemi çağırır , bu yüzden gerçekten bir yineleyici …
119 python  string  iterator 

7
Sonsuz bir üretici için bir ifade var mı?
Sonsuz elemanlar üretebilen düz bir üreteç ifadesi var mı? Bu tamamen teorik bir sorudur. Burada "pratik" bir cevaba gerek yok :) Örneğin, sonlu bir üretici yapmak kolaydır: my_gen = (0 for i in xrange(42)) Bununla birlikte, sonsuz bir tane yapmak için ad alanımı sahte bir işlevle "kirletmem" gerekiyor: def _my_gen(): …

7
Aşağı doğru ölçekleme veya döngü için azalma?
Scala'da, aşağıdaki forgibi artan bir sırayla döngü yapmak için genellikle bir yineleyici kullanırsınız : for(i <- 1 to 10){ code } 10'dan 1'e çıkması için nasıl yaparsınız? Sanırım 10 to 1boş bir yineleyici veriyor (normal aralık matematiği gibi)? Yineleyicide ters çağırarak sorunu çözen bir Scala betiği yaptım ama bence bu …

9
Aynı anda iki veya daha fazla konteyneri yinelemenin en iyi yolu nedir?
C ++ 11, kapsayıcılar üzerinde yineleme yapmak için birden çok yol sağlar. Örneğin: Menzile dayalı döngü for(auto c : container) fun(c) std :: for_each for_each(container.begin(),container.end(),fun) Bununla birlikte, aşağıdakiler gibi bir şeyi gerçekleştirmek için aynı boyutta iki (veya daha fazla) kabı yinelemek için önerilen yol nedir: for(unsigned i = 0; i …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.