Procházení proměnným řetězcem v jazyce Java

Pomocí Java je možné extrahovat každé písmeno věty.

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); }}