我对android很新。请你帮我解决这个问题。 我有一个像
这样的字符串DOCOMOBH-TATA DOCOMO Mobile Bihar-SRSBL53-DOCOMOBH
我必须得到第三个元素。即SRSBL53
我做到了。
StringTokenizer stringTokenizer = new StringTokenizer(billerlist, "-");
String strBillerId = stringTokenizer.nextToken();
因此我得到了第一个元素DOCOMOBH。但是如何得到第三个元素。谢谢。
答案 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.StringSplitter
,StringTokenizer
必须至少读取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