Quote:
Originally Posted by Mostey
Es ging nicht um das Modulo sondern um deine unsinnige Zählervariable die irgendwo draußen deklariert wird.
Du brauchst hier auch nicht von Performance sprechen, die spielt hier nämlich die kleinste Rolle.
Lass mich raten, du sitzt mit deiner Nanosekunden Stoppuhr an deinem Schreibtisch und denkst, das mich das interessiert? Was ist daran nicht sinnvoll und nicht performant? Das sind keine gültigen Argumente, du ziehst nie eine Begründung heran sondern stellst nur Behauptungen auf.
Die Schleife hast du konkret nicht genannt, das Grundprinzip bleibt aber. Zählervariable außerhalb und hochzählen um die Länge zu holen, die du eh schon hast. Ohnehin ist eine Schleife hier nicht verkehrt, allerdings gehört die Zählervariable dafür lokal deklariert und nicht irgendwo draußen. Wozu auch?
Code:
public static IEnumerable<String> SplitInParts(this String s, Int32 partLength) {
if (s == null)
throw new ArgumentNullException("s");
if (partLength <= 0)
throw new ArgumentException("Part length has to be positive.", "partLength");
for (var i = 0; i < s.Length; i += partLength)
yield return s.Substring(i, Math.Min(partLength, s.Length - i));
}
[Only registered and activated users can see links. Click Here To Register...]
Gefällt mir zum Beispiel sehr gut und ist sauber.
|
Naja nun nochmal für die, dei den letzten Schuss nicht gehört haben.
Die Funktion ist eindeutig dafür da einen Key o.ä. einzugeben und zu formatieren.
Zitat aus dem ersten Post für die "nicht den ganzen Post Leser"
Quote:
|
wenn ich in eine Textbox etwas eingebe, immer nach 4 eingaben (nummern)
|
Deine Funktion funktioniert nur wenn ich den String fertig eingegeben habe um ihn dannach zu Formatieren.
Würdest du ihn bei jedem TextChanged Event aufrufen, dann hättest du das '-' als eigenen Char im string.
Wenn man keys eingibt sollte man auch auf backspace oder ähnliches klicken können, ohne das der ganze Text verhauen wird.
WPF habe ich deshalb erwähnt um die best mögliche Lösung zu nennen um Textboxen zu formatieren.
Meine Funktion schaut wie folgt aus:
int i = 0;
## textbox changed event text added
{
i++;
if(i==4)
{
i=0;
text=text +'-';
}}
Und das selbe noch wenn ich text entferne sollte ja jeder hinbekommen.
Die Länge die man "eh" schon hat. Müsste man ja wieder Filtern ('-') zählen und von der Länge abziehen um zu Formatieren.
Ich definiere persönlich lieber eine variable außerhalb die Life dem Benutzer die Möglichkeit bietet eineschöne GUI zu erleben. Als erst am Ende zu formatieren.
Desweiteren ist performance immer ein wichtiger Punkt.
Es gibt immer mehrere Wege zum ziel aber man sollte den besten nehmen. Nehmen wir eine Mittelgroße Anwendung.
Dann in jeder Funktion sich 30% der Zeit einzusparen lohnt sich wohl.
Da du die Architektur des ganzen Programms nicht kennst sollte man sehr wohl auf die Performance acht geben.
-------------------
Ich werde hierzu auch nichts mehr schreiben. Personen mit halbwissen lassen sich eh schlecht überzeugen.
Ich stehe selbst kurz vor dem beenden meines SSE deswegen denke ich dass ich mich dazu äußern kann.