1、類StringTokenizer
public class StringTokenizer extends Object implements Enumeration<Object>string tokenizer 類允許應用程序將字符串分解爲標記。tokenization 方法比 StreamTokenizer
類所使用的方法更簡單。StringTokenizer
方法不區分標識符、數和帶引號的字符串,它們也不識別並跳過註釋。
可以在創建時指定,也可以根據每個標記來指定分隔符(分隔標記的字符)集合。
StringTokenizer
的實例有兩種行爲方式,這取決於它在創建時使用的 returnDelims
標誌的值是 true
還是 false
:
- 如果標誌爲
false
,則分隔符字符用來分隔標記。標記是連續字符(不是分隔符)的最大序列。 - 如果標誌爲
true
,則認爲那些分隔符字符本身即爲標記。因此標記要麼是一個分隔符字符,要麼是那些連續字符(不是分隔符)的最大序列。
StringTokenizer 對象在內部維護字符串中要被標記的當前位置。某些操作將此當前位置移至已處理的字符後。
通過截取字符串的一個子串來返回標記,該字符串用於創建 StringTokenizer 對象。
下面是一個使用 tokenizer 的實例。代碼如下:
StringTokenizer st = new StringTokenizer("this is a test"); while (st.hasMoreTokens()) { System.out.println(st.nextToken()); }
輸出以下字符串:
this is a test
StringTokenizer 是出於兼容性的原因而被保留的遺留類(雖然在新代碼中並不鼓勵使用它)。建議所有尋求此功能的人使用 String 的 split 方法或 java.util.regex 包。
下面的示例闡明瞭如何使用 String.split 方法將字符串分解爲基本標記:
String[] result = "this is a test".split("//s"); for (int x=0; x<result.length; x++) System.out.println(result[x]);
輸出以下字符串:
this is a test