2012-07-30 54 views
3

我有一个包含字符串数量的字符串[],我想要做的是根据使用哪个字符串设置ProgressBar的进度。[Android]如何从字符串获取项目编号(位置)[]

例如,我已经确定了字符串的数量并相应地设置了进度条的最大进度;这里是名单:

"zero one two three four five six seven eight nine...." 

..

String[] cpu0freqslist = cpu0freqs.split("\\s"); 
countcpu0 = cpu0freqslist.length; 

..

ProgressBar cpu0progbar = (ProgressBar)findViewById(R.id.progressBar1); 
cpu0progbar.setMax(countcpu0); 

但现在我需要根据所使用的项目设置进度的进展,我不知道如何获得物品位置。

所以,如果我想设置一个进度条到项目5的位置(在这种情况下它会是6),我该怎么做 - 我怎样才能得到项目5的位置?

+0

“cpu0freqslist”变量是一个数组。所以你可以用第五个元素的“cpu0freqslist [4]”来简单地访问该数组。 – 2012-07-30 09:26:56

回答

6

基本上你要找的是一个的indexOf(...)...

因为数组没有它,你就必须寻找直通它来寻找所需的字符串。所以像这样(随意优化)

public int indexOfString(String searchString, String[] domain) 
{ 
    for(int i = 0; i < domain.length; i++) 
     if(searchString.equals(domain[i])) 
      return i; 

    return -1; 
} 

话又说回来,如果你动态地获取您的字符串[]的数据,这将是明智的使用ArrayList,只是调用list.indexOf(myString);

3

cpu0freqslist[5]

这是否帮助你吗?

1

好了,让我休息您查询到的部分...

String[] arr = {"First","Second","Third"}; // String array with 3 elements 

for(int i=0 ; i<arr.length ; i++){ 

    int j = i ;       // Position of the element 

    String s = a[i] ;     // Element Itself 

    System.out.println("The "+i+" element is "+s); 


    } 
5

可以使用Arrays实用工具类:

List<String> list = Arrays.asList(new String[] {"First", "Second", "Third"}); 
int index = list.indexOf("Second"); // 1 
相关问题