Snees (19.11.2011)
-
19.11.2011, 12:47 #1
[C#] Arrays und for-Schleifen
Hier ein kleines Beispiel, wie man in C# mit Arrays arbeitet und diese mit einer einfachen for-Schleife auslesen kann.
Code:/* Arbeiten mit Arrays in Verbindung mit for-Schleifen * Autor: Nico @ U-Hacks.net */ using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { /* * Kurze Erklärung einer for-Schleife * angenommen ihr habt eine Schleife: * for (int i = 0; i < 3; i++) * stellt euch das nun so vor: * for (1;2;3) * 1: Einen Integer deklarieren und einen Wert zuweisen * 2: Die Bedingung, solange diese Bedingung erfüllt ist wird die Aktion in der for-Schleife ausgeführt * 3: Den Wert der Integer Variablen um 1 erhöhen, dazu gibt es auch zwei Möglichkeiten: * 3.1: i = i + 1; * oder * 3.2: i++; */ /* Es gibt 2 Möglichkeiten, die eine Möglichkeit ist allerdings nicht so schön und es können oft Fehler entstehen, die man ganz leicht vermeiden kann. */ // Die erste Möglichkeit wäre: string[] Userlist = new string[3]; Userlist[0] = "James"; Userlist[1] = "Charles"; Userlist[2] = "Jamal"; for (int i = 0; i < 3; i++) { Console.WriteLine("(" + i + ") " + Userlist[i]); } Console.ReadKey(); /* Man gibt direkt an, wie viele Strings darin gespeichert werden sollen, * wenn man nun aber einen Wert hinzufügt, müsste man: * "new string[3"] zu "new string[4]" ändern und * "for (int i = 0; i < 3; i++)" zu "for (int i = 0; i < 4; i++)" * Man muss also die 3 zweimal zu der 4 ändern, weil dann ja 4 Einträge gespeichert wären. */ // Die zweite Möglichkeit ist einfacher und schneller zu schreiben string[] Userliste = new string[] { "James", "Charles", "Jamal" }; for (int i = 0; i < Userliste.Length; i++) { Console.WriteLine("(" + i + ") " + Userliste[i]); } Console.ReadKey(); /* * Man gibt nicht vor, wie viele Einträge sich darin befinden werden * Fügt die Einträge wesentlich einfacher und schneller hinzu * und muss in der for-Schleife nur "i < Userliste.Length" schreiben. * Somit muss man die Anzahl der Einträge nicht anpassen, alles läuft automatisch */ } } }
-
19.11.2011, 12:51 #2
AW: [C#] Arrays und for-Schleifen
Und noch schneller geht es mit foreach.
Ich finde Performance-Angelegenheiten manchmal ganz nett:
Die Performance von C#-Programmen « Das Megos .NET-Weblog„Es sind nicht unsere Fähigkeiten, die zeigen, wer wir wirklich sind, es sind unsere Entscheidungen.“
- Albus Dumbledore, Harry Potter 2
/guestchat registerGuest
-
The Following 2 Users Say Thank You to Mentos For This Useful Post:
-
19.11.2011, 12:57 #3
AW: [C#] Arrays und for-Schleifen
foreach macht den Code um 50% schneller, die zweite Methode, die ich angesprochen habe macht den Code um 20% schneller, weil der Compiler merkt, dass er keine Bereichsprüfung machen muss.
foreach:
Code:string[] Userliste = new string[] { "James", "Charles", "Jamal" }; foreach (string eintrag in Userliste) { Console.WriteLine(eintrag); }
-
The Following User Says Thank You to Snees For This Useful Post:
-
19.11.2011, 18:03 #4
- Registriert seit
- 28.10.2011
- Beiträge
- 625
Thanked 281 Times in 169 PostsAW: [C#] Arrays und for-Schleifen
Gut dass man dies mal betont ^^ Wer kommt denn auch auf die Idee, dass des Leistungs/Performance-Technisch nicht sinnvoll ist. Nicht unbedingt jeder.
-
The Following User Says Thank You to Bubble Gum For This Useful Post:
Snees (19.11.2011)
-
19.11.2011, 18:09 #5
AW: [C#] Arrays und for-Schleifen
Da hast du Recht, viele User die hier entwickeln werden aber wahrscheinlich nicht unbedingt darauf achten, dabei ist es schon ein Unterschied, welche Art der Schleife man nutzt. Bei einem Array mit 5 Einträgen wird es vielleicht nicht unbedingt notwendig sein, aber wenn man 1000 Einträge hat ist es sinnvoll, 50% ist viel und das mit zwei Zeilen Code die man verändern muss!
LG
Ähnliche Themen
-
[C++] Grundwissen I (Variablen, Schleifen, Abfragen, etc)
Von DMW007 im Forum C++Antworten: 5Letzter Beitrag: 05.01.2017, 09:31 -
C# Assoziative Arrays in C#?
Von Essah im Forum .NetAntworten: 1Letzter Beitrag: 24.11.2013, 17:15 -
Alle geraden Zahlen eines Integer Arrays
Von !lkay im Forum JavaAntworten: 1Letzter Beitrag: 29.01.2013, 18:53 -
Problem mit Schleifen
Von exception im Forum HochsprachenAntworten: 7Letzter Beitrag: 20.07.2012, 11:55
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.