2016-07-31 4 views
3

Ich schrieb eine Funktion in Java, die die Anzahl der Zeichen nach Leerzeichen in einer Zeichenfolge zählt. Dieses Problem klingt für einige von Ihnen trivial.Wie kann man eine Variable wiederverwenden, ohne eine neue in for loop in Java zu initialisieren?

public int countAfterSpaces(final String a){ 
    int position = 0; // escapes leading whitespaces 
    while(position<a.length() && a.charAt(position)==' ') position++; 

Jetzt möchte ich für Schleife in eine dieser Variablen (Position) wieder zu verwenden, ohne eine neue (i) bei der Initialisierung Anweisung zu erstellen. Momentan mache ich das.

int count = 0; 
    for (int i=position; i<a.length; i++) count++; 
    return count; 
} 
+2

Warum statt 'for' nicht verwenden' while' Schleife? –

+0

Obwohl in diesem Fall eine Schleife nicht vollständig notwendig ist. –

+0

Ja, meine Frage war etwas anders, ich habe es einfach etwas einfacher gemacht. Ich habe im Grunde versucht, die Atoi-Funktion zu lösen. Dies erfordert, dass ich die Anzahl der Leerzeichen vor dem Auftreten eines numerischen Zeichen berechnen. – aditya

Antwort

4

Sie brauchen keine neue Variable zu deklarieren:

for (; position<a.length; position++) count++; 

Sie ein beliebiges Feld der for-Schleife leer lassen.

Oder noch besser, warum nicht:

count = a.length - position; 
+1

Großartig. Das scheint zu funktionieren. Ich werde dies nach 10 Minuten AC. – aditya

Verwandte Themen