• StringTokenizer 简单的描述


    查了下api文档:发现 

    StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。

    既然已经不必提倡,代码尽量不要用这些;还是简单了解下用法:一般是3个方法一起用,迭代:

    方法1:

    public StringTokenizer(String str, String delim, boolean returnDelims)
    如果 returnDelims 标志为 true,则分隔符字符也作为标记返回。每个分隔符都作为一个长度为 1 的字符串返回。如果标志为 false,则跳过分隔符,只是用作标记之间的分隔符。
    注意,如果 delim 为 null,则此构造方法不抛出异常。但是,尝试对得到的 StringTokenizer 调用其他方法则可能抛出 NullPointerException。
    参数:
    str - 要解析的字符串。
    delim - 分隔符。
    returnDelims - 指示是否将分隔符作为标记返回的标志。
    抛出:
    NullPointerException - 如果 str 为 null。

    方法2:

    public String nextToken()
    返回此 string tokenizer 的下一个标记。
    返回:
    此 string tokenizer 的下一个标记。
    抛出:
    NoSuchElementException - 如果此 tokenizer 的字符串中没有更多标记。

    方法3:

    public boolean hasMoreElements()
    如果有更多标记,则为 true;否则为 false。

    一个例子:

    StringTokenizer test = new StringTokenizer("aa=cc","=", true);
    while(test.hasMoreElements()){
    System.out.println(test.nextToken());
    }

    返回:aa = cc

    现在这个方法已经不提倡用了,存在的目的是为了兼容以前的代码:

     String 的 split 方法或 java.util.regex 包。

         String[] result = "this is a test".split("\s");
         for (int x=0; x<result.length; x++)
             System.out.println(result[x]);
  • 相关阅读:
    Unity3d vector3.forward和transform.forward的区别!
    UGUI实现摇杆
    UGUI实现拼图游戏
    Unity3d打包发布Android程序
    兼容PC和手机触摸代码
    unity3d中Transform组件变量详解
    运算符重载
    扩展方法
    string.Format格式化输出
    网络编程之Socket的TCP协议实现客户端与客户端之间的通信
  • 原文地址:https://www.cnblogs.com/qianduanxiaocaij/p/4835103.html
Copyright © 2020-2023  润新知