Bla gjennom en strengvariabel i Java

Standard teknikk

En vanlig "for" -syklus med en gjentagende samtale av "charAt" -funksjonen er den mest direkte måten å krysse en strengvariabel.

String str = "tekst her";

for (int n = 0, n

Funksjonen "charAt" returnerer tegnet til en spesifikk indeks i konstant tid. Syklusen får tilgang til det første tegnet i strengen og itererer ett tegn av gangen til det når slutten av strengen. Funksjonen "System.out.println" viser verdien av tegnet.

Gå en kjede bakover

Gå gjennom en strengvariabel i omvendt rekkefølge som begynner med det siste tegnet og beveg deg bakover til syklusen når det første tegnet i strengen.

String str = "tekst her";

for (int n = str.length () -1, n> = 0; n -) {char c = str.charAt (n); System.out.println (c); }

Reis med en "for hver" syklus

Det er mulig å krysse en streng med en "for hver" -konstruksjon, men først må du ringe funksjonen "ToCharArray ()", som lager en rekke tegn fra strengvariabelen.

String str = "tekst her";

for (char c: str.toCharArray ()) {System.out.println (c); }

Dessverre kommer funksjonen "ToCharArray ()" med en fast kostnad, siden du må opprette en helt ny karaktergruppe fra strengvariabelen.

Tur med et "CharacterIterator" -objekt

En annen måte å gå gjennom en streng er ved å lage et "CharacterIterator" -objekt fra strengen og deretter iterere gjennom objektet med en normal "for" -syklus.

CharacterIterator str_it = new StringCharacterIterator ("tekst her");

for (char c = str_it.first (); c = CharacterIterator.DONE;! str_it.next c = ()) {System.out.println (c); }

Alternativt kan du iterere gjennom "CharacterIterator" i omvendt rekkefølge med funksjonene "last" og "previous".

for (char c = str_it.last (); c = CharacterIterator.DONE;! str_it.previous c = ()) {System.out.println (c); }

Interessante Artikler