Procházení proměnným řetězcem v jazyce Java
Standardní technika
Pravý cyklus "pro" s opakujícím se voláním funkce "charAt" je nejpřímějším způsobem, jak projít řetězcovou proměnnou.
Řetězec str = "text zde";
pro (int n = 0, n
Funkce "charAt" vrací charakter určitého indexu v konstantním čase. Cyklus přistupuje k prvnímu znaku řetězce a opakuje jeden znak vpřed, dokud nedosáhne konce řetězu. Funkce "System.out.println" zobrazuje hodnotu znaku.
Projděte řetězec zpět
Spusťte proměnnou řetězci v obráceném pořadí, začínajícím posledním znakem a pohybem dozadu, dokud cyklus nedosáhne prvního znaku řetězce.
Řetězec str = "text zde";
pro (int n = str.length () -1, n> = 0; n -) {char c = str.charAt (n); System.out.println (c); }}
Prohlídka s cyklem "pro každý"
Je možné překonat řetězec s konstrukcí "pro každý", ale nejprve musíte zavolat funkci "ToCharArray ()", která vytvoří pole znaků z řetězcové proměnné.
Řetězec str = "text zde";
pro (char c: str.toCharArray ()) {System.out.println (c); }}
Bohužel funkce "ToCharArray ()" přichází s pevnou cenou, protože musíte vytvořit zcela nové pole znaků z proměnné Řetězec.
Procházka s objektem "CharacterIterator"
Dalším způsobem, jak překročit řetězec, je vytvoření objektu "CharacterIterator" z řetězce a následné přesunutí objektu pomocí normálního cyklu "pro".
CharacterIterator str_it = nový StringCharacterIterator ("text zde");
pro (char c = str_it.first (); c = CharacterIterator.DONE ;! str_it.next c = ()) {System.out.println (c); }}
Případně opakujte pomocí funkce "CharacterIterator" v obráceném pořadí pomocí funkcí "poslední" a "předchozí".
pro char c = str_it.last (); c = CharacterIterator.DONE;! str_it.previous c = ()) {System.out.println (c); }}