天天看點

StringTokenizer類的使用

StringTokenizer是一個用來分隔String的應用類,相當于VB的split函數。

1.構造函數

public StringTokenizer(String str)

public StringTokenizer(String str, String delim)

public StringTokenizer(String str, String delim, boolean returnDelims)

第一個參數就是要分隔的String,第二個是分隔字元集合,第三個參數表示分隔符号是否作為标記傳回,假設不指定分隔字元,預設的是:”

f”

2.核心方法

public boolean hasMoreTokens()

public String nextToken()

public String nextToken(String delim)

public int countTokens()

事實上就是三個方法,傳回分隔字元塊的時候也能夠指定切割符,并且以後都是採用最後一次指定的分隔符号。

3.多餘方法

public boolean hasMoreElements()

public boolean hasMoreElements()

這個類實作了Enumeration接口,是以多了這麼兩個方法,事實上根本沒有必要實作這個接口

它的名字就叫StringTokenizer,傳回一個Object就沒有什麼意思了。

屬于:java.util包。

1、構造函數。

1. StringTokenizer(String str):構造一個用來解析str的StringTokenizer對象。java預設的分隔符是“空格”、“制表符(‘ ’)”、“換行符(‘

’)”、“回車符(‘

’)”。

2. StringTokenizer(String str, String delim):構造一個用來解析str的StringTokenizer對象,并提供一個指定的分隔符。

3. StringTokenizer(String str, String delim, boolean returnDelims):構造一個用來解析str的StringTokenizer對象,并提供一個指定的分隔符,同一時候,指定是否傳回分隔符。

2、方法。

說明:

1. 全部方法均為public;

2. 書寫格式:[修飾符] <傳回類型><方法名([參數清單])>

如:

static int parseInt(String s)表示:此方法(parseInt)為類方法(static),傳回類型為(int),方法所需參數為String類型。

1. int countTokens():傳回nextToken方法被調用的次數。假設採用構造函數1和2,傳回的就是分隔符數量(例2)。

2. boolean hasMoreTokens() :傳回是否還有分隔符。

3. boolean hasMoreElements() :結果同2。

4. String nextToken():傳回從目前位置到下一個分隔符的字元串。

5. Object nextElement() :結果同4。

6. String nextToken(String delim):與4類似,以指定的分隔符傳回結果。

樣例:

代碼:

String s = new String("The Java platform is the ideal platform for network computing");

StringTokenizer st = new StringTokenizer(s);

System.out.println( "Token Total: " + st.countTokens() );

while( st.hasMoreElements() ){

System.out.println( st.nextToken() );

           }

結果為:

Token Total: 10

The

Java

platform

is

the

ideal

platform

for

network

computing

例2:

代碼:

String s = new String("The=Java=platform=is=the=ideal=platform=for=network=computing");

StringTokenizer st = new StringTokenizer(s,"=",true);

System.out.println( "Token Total: " + st.countTokens() );

while( st.hasMoreElements() ){

System.out.println( st.nextToken() );

}

結果為:

Token Total: 19

The

=

Java

=

platform

=

is

=

the

=

ideal

=

platform

=

for

=

network

=

computing

原文出自:http://blog.sina.com.cn/s/blog_8830b3ed0100y9m7.html