foreach Doppelte Abfrage,Syntax Möglich?
-
Hmm war schwer einen passenden Titel zu finden.Was ich frage will ist denn sowas hier in C# möglich? Aus C++ kenne ich das, das man einfach eine "doppelte Abfrage"in eine for schleife setze.
List<string> stringliste = new List<string>(); //befüllen der liste foreach(var item in stringliste,/*wie kann man das wie in c++ machen*/ stringliste2) { //mach irgendwelchen mist }
ist sowas in der Art möglich? Wenn nicht, wie könnte ich es anders lösen?
-
Zeig mal einen gültigen C++ Code als Beispiel. Ich verstehe nämlich grad echt nicht was du genau machen willst.
Wenn du zwei String-Listen durchgehen willst, mach zwei Schleifen (ich wüsste auch nicht wie das in C++ elegant ohne zwei Schleifen ginge). Wenn du die Elemente noch einem zusätzlichen Test unterziehen willst, mach ein if in der Schleife.
-
Ich meinte das in so einer Form:
for(int i =;i<100,irgendeinezahl<50;i++,irgendeinezahl++)
-
Firefighter schrieb:
Ich meinte das in so einer Form:
for(int i =;i<100,irgendeinezahl<50;i++,irgendeinezahl++)
Das könnte man evtl. noch mit LinQ machen, aber mit einer normalen foreach-Schleife geht das nicht.
-
Hast du eventuell ne Seite wo das kurz erklärt wird, oder ein Codesnippet, wo ich eventuell die Funktionalität erkenne? Weil mit LinQ hab ich mich ehrlich gesagt noch nicht auseiander gesetzt.
-
http://msdn.microsoft.com/en-us/vcsharp/aa336746.aspx
Edit: Auf der genannte Seite wird die Linq Syntax verwendet, du kannst aber auch die Extension-Methods mit Delegates nutzen.
-
Super Danke,dann werd ich mich mal durchfitzen
-
PuppetMaster2k schrieb:
Firefighter schrieb:
Ich meinte das in so einer Form:
for(int i =;i<100,irgendeinezahl<50;i++,irgendeinezahl++)
Das könnte man evtl. noch mit LinQ machen, aber mit einer normalen foreach-Schleife geht das nicht.
das geht in c# doch genauso, nimm halt die for statt ein foreach, dann kannst du es genauso machen
-
Jo das weiß ich ja auch, nur es wäre ebend cooler wenn man sowas in der Art machen könnte
foreach(String str in EinerStringlist,String str2 in EinerStringList2)
-
wieso waehre es "cooler" ? weils cooler aussieht ? ist das dein ansatz wann man was verwenden sollte ?
-
Mr Evil schrieb:
wieso waehre es "cooler" ? weils cooler aussieht ? ist das dein ansatz wann man was verwenden sollte ?
Öhm ich glaube nicht, das das mein Ansatz ist, wann ich was verwende, sondern ich gehe nach funktionalität wann ich der Meinung bin es zu brauchen, manchmal(so wie auch jetzt) habe ich festgestellt das ich doch nicht so einsetzen müsste wie ich gefragt habe
Es waren aber trotzdem alle Antworten hilfreich.
-
Hallo
Wenn es dir um die Funktionalität geht, dann nimm einfach eine for-Schleife.
chrische
-
Ja, danke, hab ich nun auch gesehen, das es wohl die einzige Möglichkeit ist bei meinem Problem, habe es zum Glück gelöst bekommen. Danke für alles. Bis zum nächsten mal.
-
einzigste moeglichkeit nicht unbedingt
foreach benutzt ja auch nur ein enumeratorpseudo:
iterator iter1 = object1.getIterator foreach (iterator iter2 in object2) { do anything with iter1 and iter2 ++iter1 }
-
Stimmt das ist auch ne nette Lösung.Danke Mr Evil
-
Hallo
Warum sollte man das so machen und nicht einfach for nehmen?
chrische
-
Ja nachdem ich die Lösung hatte, habe ich mich auch gefragt
-
ich wuerd auch diese be(for)zugen - ich hab nur eine weitere moeglichkeit auf gezeigt um sein comment "das es wohl die einzige Möglichkeit ist" zu belegen
viele wege fuehren nach rom
-
Firefighter schrieb:
Jo das weiß ich ja auch, nur es wäre ebend cooler wenn man sowas in der Art machen könnte
foreach(String str in EinerStringlist,String str2 in EinerStringList2)
for(int i =;i<100,irgendeinezahl<50;i++,irgendeinezahl++)
Erklär mir bitte was die pseudo-C#-Schleife machen soll. Mit der C++ Schleife hat das auf jeden Fall garnix zu tun. Und "i<100,irgendeinezahl<50" macht auch nicht das was du denkst, wenn dann müsstest du sowas wie "i<100 && irgendeinezahl<50" schreiben.
Und was soll diese Schleife dann überhaupt für einen Sinn haben?
-
Ich hatte doch schon gesagt, das ich mitlerweile mitbekommen habe das es sinnlos war was ich gefragt hatte
Was ich versuchen wollte, war mit einem Enumerator 2 Listen zum selben zeitpunkt zu durchwandern. Habe nun auhc mitbekommen das es nicht geht und auch Logisch völlig Hirnfrei war:D