StringTokenizer类 在Java中,用于将字符串拆分为标记。一个人必须通过 StringTokenzier类 其中讨论了有助于更好地理解以下方法的概念和构造函数:
StringTokenizer类的方法如下:
- 哈斯莫特肯
- 下一个
- 代币
- nextElement
- 哈斯莫尔元素
方法1: hasMoreTokens()
该方法在测试StringTokenizer的字符串是否存在标记时发挥作用。StringTokenizer对象认为是分隔符的字符将更改为字符串分隔符中的字符。然后返回字符串中当前位置的下一个标记。
语法:
public boolean hasMoreTokens()
返回类型: 布尔值,当且仅当字符串中当前位置的下一个标记存在时为true,否则为false。
方法2: nextToken()
该方法返回给定StringTokenizer中的下一个标记。
语法:
public String nextToken()
返回类型: 来自给定StringTokenizer的下一个标记(如果存在)。
引发异常: 非接触性异常 如果没有更多的代币了。
方法3:countTokens()
该方法返回当前令牌的总数,以便在出现异常之前使用nextToken()方法。
语法:
public int countTokens()
返回类型: 使用当前分隔符集的字符串中剩余的令牌数。
实例
JAVA
// Java Program to Illustrate Methods of StringTokenizer class // Via hasMoreToken(), nextToken() and countTokens() // Importing required classes import java.util.*; // Main class public class GFG { // Main driver method public static void main(String args[]) { // Input strings String mydelim = " : " ; String mystr = "JAVA : Code : String : Tokenizer : Geeks" ; // Use of Constructor 2 // Here we are passing Delimiter - "mydelim" StringTokenizer geeks3 = new StringTokenizer(mystr, mydelim); // Printing count of tokens and tokens // using countTokens() method int count = geeks3.countTokens(); System.out.println( "Number of tokens : " + count + "" ); // Iterating to get the tokens for ( int i = 0 ; i < count; i++) System.out.println( "token at [" + i + "] : " + geeks3.nextToken()); // checks for more tokens using hasMoreTokens() method // which holds true til there is single element remaining while (geeks3.hasMoreTokens()) // Returning the next token // using nextToken() method System.out.println(geeks3.nextToken()); } } |
Number of tokens : 5 token at [0] : JAVA token at [1] : Code token at [2] : String token at [3] : Tokenizer token at [4] : Geeks
方法4: nextElement()
该方法的工作原理与nextToken类似,只是它返回一个对象而不是字符串。存在,以便此类可以实现枚举接口。
语法:
public Object nextElement()
返回类型: 来自给定StringTokenizer的下一个标记。
引发异常: 非接触性异常 如果没有更多的代币了。
方法5: hasMoreElements()
此方法返回与hasMoreToken相同的值。它的存在是为了类能够实现枚举接口。
语法:
public boolean hasMoreElements()
返回类型: 布尔值,如果字符串中存在标记,则为true,否则为false
实例
JAVA
// Java Program to Illustrate Methods of StringTokenizer // Class Via hasMoreElements, nextElement and nextElement // Importing required classes import java.util.*; // Main class public class GFG { // Main driver method public static void main(String args[]) { // Input strings String mydelim = " : " ; String mystr = "JAVA : Code : String : Tokenizer : Geeks" ; // Use of Constructor 2 // Here we are passing Delimiter - "mydelim" StringTokenizer geeks = new StringTokenizer(mystr, mydelim); // Counting no. of tokens present // using countTokens() method int count = geeks.countTokens(); // Printing no. of tokens present System.out.println( "Number of tokens : " + count); // Condition holds true till there is // single token remaining using hasMoreElements() // method True if tokens are present while (geeks.hasMoreElements()) // Returning the next token // using nextElement() method System.out.println(geeks.nextElement()); } } |
Number of tokens : 5 JAVA Code String Tokenizer Geeks
提示: 一定要记住下列要点:
- countTokens()方法是使用该组合的一个很好的替代方法 hasMoreTokens() 和 nextToken() .
- 结合 countTokens() 和 nextToken() 如果您对代币的数量感兴趣,也可以使用。
本文由 莫希特·古普塔 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 写极客。组织 或者把你的文章寄去评论-team@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。