StringTokenizer获取第三个元素

时间:2013-09-05 13:06:27

标签: android stringtokenizer

我对android很新。请你帮我解决这个问题。 我有一个像

这样的字符串
DOCOMOBH-TATA DOCOMO Mobile Bihar-SRSBL53-DOCOMOBH

我必须得到第三个元素。即SRSBL53

我做到了。

StringTokenizer stringTokenizer = new StringTokenizer(billerlist, "-");
String strBillerId = stringTokenizer.nextToken();

因此我得到了第一个元素DOCOMOBH。但是如何得到第三个元素。谢谢。

3 个答案:

答案 0 :(得分:1)

您可以在split(regex)

上使用String
String billerlist = "DOCOMOBH-TATA DOCOMO Mobile Bihar-SRSBL53-DOCOMOBH";

String[] array = billerlist.split("-");
if(array.length>2){
    String thirdElement = array[2];
}    

答案 1 :(得分:0)

尝试使用TextUtils.StringSplitterStringTokenizer必须至少读取n个令牌才能确定哪个是第n个令牌。因此,使用StringSplitter

创建字符串数组可能更容易
TextUtils.StringSplitter splitter = new TextUtils.SimpleStringSplitter("-");

splitter.setString(billerList);
if(splitter.size>2){
    String myString = splitter[2];
}

答案 2 :(得分:0)

其他人提供了优化的答案,但为了回答您的尝试,请参阅以下代码

    String billerlist = "DOCOMOBH-TATA DOCOMO Mobile Bihar-SRSBL53-DOCOMOBH";
    StringTokenizer stringTokenizer = new StringTokenizer(billerlist, "-");
    String requiredData = null; //local variables must be initialized before using
     int count = 1;
    while(stringTokenizer.hasMoreTokens()) {
        String data = stringTokenizer.nextToken();
        if(count == 3) {
            requiredData = data;
        }
        count++;
    }
    if(requiredData != null) {
        System.out.println("Required data is " + requiredData);
    }
    else {
        System.out.println("Required data not present");
    }

,输出

Required data is SRSBL53
相关问题