Entwickler-Ecke
Basistechnologien - Array konvertierung, richtig so?
Marlon - Mo 11.02.08 17:18
Titel: Array konvertierung, richtig so?
Hallo,
ich wusste nicht, wie ich ein Array String in ein Array Int umwandeln kann.
Darum habe ich ein 2. Array angelegt und es so geregelt:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7:
| note2[] = string note[] = int
for (int i = 0; i < 6; i++) { note[i] = Convert.ToDouble(note2[i]); } |
Ist es so richtig, oder gibt es da einen bessern weg?
Danke!
Moderiert von
Christian S.: C#-Tags hinzugefügt
Christian S. - Mo 11.02.08 17:28
Ich würde mit Double.TryParse arbeiten, damit es nicht kracht wenn ein String mal nicht in eine Zahl umgewandelt werden kann. Ansonsten sieht das okay aus.
//Edit: Ach ja - :welcome:
Leuchtturm - Mo 11.02.08 17:31
eventuell könnte man in der for-Schleife statt i < 6 die Anzahl der Items in dem Array nehmen, außer es sollen immer nur die ersten 6 sein :wink:
JüTho - Mo 11.02.08 17:42
Christian hat schon bestätigt, dass es korrekt ist. Vom Grundsatz her geht es auch gar nicht anders: Jedes Array enthält eine eigene Liste vom eigenen Typ; jedes Element einer jeden Liste muss separat konvertiert werden.
Ich hab noch ein paar Anmerkungen:
* Die Deklaration und Implementation der Arrays ist (in Deinem Auszug) natürlich falsch. Schon wegen des Vorbilds für andere Leser sollte das immer richtig kopiert werden. (Oder ist das Chrome?)
* Du schreibst von int-Arrays. Dann kann eine double-Konvertierung natürlich nicht zum Ziel führen.
* Die Methoden der Convert-Klasse sind grundsätzlich nur die letzte Wahl. Besser sind (fast) immer TryParse und TryParseExact oder (soweit möglich) direkte Konvertierung.
Gruß Jürgen
Christian S. - Mo 11.02.08 17:45
JüTho hat folgendes geschrieben: |
Die Deklaration und Implementation der Arrays ist (in Deinem Auszug) natürlich falsch. Schon wegen des Vorbilds für andere Leser sollte das immer richtig kopiert werden. (Oder ist das Chrome?) |
Ich hatte angenommen, dass das Pseudo-Code sein sollte :gruebel:
JüTho hat folgendes geschrieben: |
Du schreibst von int-Arrays. Dann kann eine double-Konvertierung natürlich nicht zum Ziel führen. |
:oops: Das hatte ich überlesen
Marlon - Mo 11.02.08 18:31
Hallo und Danke für die schnellen Antworten...
Ich hatte eben die Frage neben dem arbeiten geschrieben und dabei ist mir ein Fehler unterlaufen.
*************Ich meinte Double und nicht Int*****************
Sorry ;-)
Kha - Di 12.02.08 11:42
Der Vollständigkeit halber: Array.ConvertAll (und im allgemeinen Fall Enumerable.Select) stünde auch noch zur Auswahl - könnte aber ohne Vorwissen über Generics und Delegates schwer bekömmlich sein :) .
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!