2 *******************************************************************************
3 * Copyright (C) 2009-2011, International Business Machines Corporation and *
4 * others. All Rights Reserved. *
5 *******************************************************************************
7 package com.ibm.icu.impl.locale;
9 public class StringTokenIterator {
13 private String _token;
16 private boolean _done;
18 public StringTokenIterator(String text, String dlms) {
24 public String first() {
29 public String current() {
33 public int currentStart() {
37 public int currentEnd() {
41 public boolean isDone() {
45 public String next() {
48 _end = nextDelimiter(_start);
49 _token = _text.substring(_start, _end);
58 public boolean hasNext() {
59 return (_end < _text.length());
62 public StringTokenIterator setStart(int offset) {
63 if (offset > _text.length()) {
64 throw new IndexOutOfBoundsException();
67 _end = nextDelimiter(_start);
68 _token = _text.substring(_start, _end);
73 public StringTokenIterator setText(String text) {
79 private int nextDelimiter(int start) {
81 outer: while (idx < _text.length()) {
82 char c = _text.charAt(idx);
83 for (int i = 0; i < _dlms.length(); i++) {
84 if (c == _dlms.charAt(i)) {