What is the easiest/best/most correct way to iterate through the characters of a string in Java?

Paul Wicks picture Paul Wicks · Oct 13, 2008 · Viewed 506.1k times · Source

StringTokenizer? Convert the String to a char[] and iterate over that? Something else?

Answer

jjnguy picture jjnguy · Oct 13, 2008

I use a for loop to iterate the string and use charAt() to get each character to examine it. Since the String is implemented with an array, the charAt() method is a constant time operation.

String s = "...stuff...";

for (int i = 0; i < s.length(); i++){
    char c = s.charAt(i);        
    //Process char
}

That's what I would do. It seems the easiest to me.

As far as correctness goes, I don't believe that exists here. It is all based on your personal style.