JavaTM 2 Platform
Std. Ed. v1.3

java.util
クラス StringTokenizer

java.lang.Object
  |
  +--java.util.StringTokenizer
すべての実装インタフェース:
Enumeration

public class StringTokenizer
extends Object
implements Enumeration

StringTokenizer クラスを使用すると、アプリケーションで文字列をトークンに分割できます。トークン化のメソッドは、StreamTokenizer クラスで使用されているメソッドよりもさらに簡単です。StreamTokenizer メソッドでは、識別子、数字、引用文字列は区別されません。また、コメントを認識してスキップすることもありません。

区切り文字 (トークンを分ける文字) は、クラスの作成時、またはトークンを得るたびに指定できます。

StringTokenizer のインスタンスは、作成時の returnDelims フラグの値が truefalse かによって、動作が異なります。

StringTokenizer オブジェクトは内部的に、トークン化される文字列内の現在の位置を管理します。いくつかのオペレーションは、この現在の位置を処理された文字の先に進めるものがあります。

トークンは、StringTokenizer オブジェクトを作成するのに使用された文字列の部分文字列を取得することによって返されます。

使用例を次に示します。

     StringTokenizer st = new StringTokenizer("this is a test");
     while (st.hasMoreTokens()) {
         println(st.nextToken());
     }
 

画面には次のように表示されます。

     this
     is
     a
     test
 

導入されたバージョン:
JDK1.0
関連項目:
StreamTokenizer

コンストラクタの概要
StringTokenizer(String str)
          指定された文字列に対する StringTokenizer を作成します。
StringTokenizer(String str, String delim)
          指定された文字列に対する StringTokenizer を作成します。
StringTokenizer(String str, String delim, boolean returnDelims)
          指定された文字列に対する StringTokenizer を作成します。
 
メソッドの概要
 int countTokens()
          例外を生成せずにトークナイザの nextToken メソッドを呼び出せる回数を計算します。
 boolean hasMoreElements()
          hasMoreTokens メソッドと同じ値を返します。
 boolean hasMoreTokens()
          トークナイザの文字列で利用できるトークンがまだあるかどうかを判定します。
 Object nextElement()
          nextToken メソッドと同じ値を返します。
 String nextToken()
          文字列トークナイザから次のトークンを返します。
 String nextToken(String delim)
          文字列トークナイザの文字列から次のトークンを返します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

StringTokenizer

public StringTokenizer(String str,
                       String delim,
                       boolean returnDelims)
指定された文字列に対する StringTokenizer を作成します。delim 引数内のすべての文字は、トークンを区切るための区切り文字です。

returnDelims フラグが true の場合は、区切り文字もトークンとして返されます。各区切り文字は長さ 1 の文字列として返されます。フラグが false の場合は、区切り文字はスキップされ、トークンを分けるだけのものと見なされます。

パラメータ:
str - 解析される文字列
delim - 区切り文字
returnDelims - 区切り文字をトークンに含めるかどうかを示すフラグ

StringTokenizer

public StringTokenizer(String str,
                       String delim)
指定された文字列に対する StringTokenizer を作成します。delim 引数の文字は、トークンを分ける区切り文字です。区切り文字そのものがトークンとして扱われることはありません。
パラメータ:
str - 解析される文字列
delim - 区切り文字

StringTokenizer

public StringTokenizer(String str)
指定された文字列に対する StringTokenizer を作成します。トークナイザはデフォルトの区切り文字セットを使います。このセットは " \t\n\r\f" で、空白文字、タブ文字、改行文字、復帰改行文字、および用紙送り文字から構成されます。区切り文字は、それ自体がトークンとして処理されることはありません。
パラメータ:
str - 解析される文字列
メソッドの詳細

hasMoreTokens

public boolean hasMoreTokens()
トークナイザの文字列で利用できるトークンがまだあるかどうかを判定します。このメソッドが true を返す場合、それ以降の引数のない nextToken への呼び出しは適切にトークンを返します。
戻り値:
文字列内の現在の位置の後ろに 1 つ以上のトークンがある場合だけ true、そうでない場合は false

nextToken

public String nextToken()
文字列トークナイザから次のトークンを返します。
戻り値:
文字列トークナイザからの次のトークン
例外:
NoSuchElementException - トークナイザの文字列にトークンが残っていない場合

nextToken

public String nextToken(String delim)
文字列トークナイザの文字列から次のトークンを返します。最初に、StringTokenizer オブジェクトが区切り文字と見なす文字のセットが、文字列 delim 内の文字になるように変更されます。次に、文字列内の現在の位置の後ろにある次のトークンが返されます。現在の位置は、認識されたトークンを越えて進みます。指定された区切り文字の集合は、この呼び出しのあともデフォルト値として使用されます。
パラメータ:
delim - 新しい区切り文字
戻り値:
新しい区切り文字に切り替えたあとのトークン
例外:
NoSuchElementException - トークナイザの文字列にトークンが残っていない場合

hasMoreElements

public boolean hasMoreElements()
hasMoreTokens メソッドと同じ値を返します。これを使用すると、このクラスに Enumeration インタフェースを実装することができます。
定義:
インタフェース Enumeration 内の hasMoreElements
戻り値:
トークナイザ文字列で利用できるトークンがまだある場合は true、そうでない場合は false
関連項目:
Enumeration, hasMoreTokens()

nextElement

public Object nextElement()
nextToken メソッドと同じ値を返します。ただし、宣言された戻り値は、String ではなく Object です。これを使用してこのクラスに Enumeration インタフェースを実装することができます。
定義:
インタフェース Enumeration 内の nextElement
戻り値:
文字列の次のトークン
例外:
NoSuchElementException - トークナイザの文字列にトークンが残っていない場合
関連項目:
Enumeration, nextToken()

countTokens

public int countTokens()
例外を生成せずにトークナイザの nextToken メソッドを呼び出せる回数を計算します。現在の位置は進みません。
戻り値:
現在の区切り文字を適用したときに文字列に残っているトークンの数
関連項目:
nextToken()

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.