CharacterIterator是一个接口,主要用来以字符为单位来遍历文本的。
StringCharacterIterator是这个接口的一个实现类。
下面是一个遍历字符串的例子,通过这种方式遍历就可以不用charAt()方法了。
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
public class Test {
public static void main(String[] args){
CharacterIterator it=new StringCharacterIterator("AbCdeF");
for(char c=it.first();c!=CharacterIterator.DONE;c=it.next()){
System.out.println(c);
}
}
}
运行结果如下
A
b
C
d
e
F
如果想逆序遍历也很简单
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
public class Test {
public static void main(String[] args){
CharacterIterator it=new StringCharacterIterator("AbCdeF");
for(char c=it.last();c!=CharacterIterator.DONE;c=it.previous()){
System.out.println(c);
}
}
}
输出结果如下
F
e
d
C
b
A
CharacterIterator.DONE这个常量表示当迭代器已到达文本末尾或开始处时返回的常量。顺序,逆序遍历都支持。