在字符串数组android中获取项目位置?

时间:2015-05-25 14:20:10

标签: java android arrays string

我们说我有一个这样的数组:

String[] = {
    "#abc #def",
    "#abc",
    "#def",
    "#xyz #def"
}

我的问题是我想搜索特定的字符或字符串,如#34;#abc"或" a"并获得他们在阵列中的位置。

5 个答案:

答案 0 :(得分:5)

只需循环浏览并自己检查每个字符串

for(int i=0; i < array.length; i++)
    if(array[i].contains("#abc"))
        aPosition = i;

如果你想存储多个位置,你需要一个像List这样的可变数组,所以代替aPosition = i你将list.add(i)

答案 1 :(得分:4)

String[] values = { "1a", "2a", "3a"};
int pos = new ArrayList<String>(Arrays.asList(values)).indexOf("3a");

答案 2 :(得分:1)

let's call your array of strings s, the code will be:
String[] s={"#abc #def",
            "#abc",
            "#def",
            "#xyz #def"};
int count=0;
    for(String s1:s){
if(s1.contains("#abc")){
//do what ever you want
System.out.println("Found at: "+count);
break;
}
count++;
}

希望这对你有用。

答案 3 :(得分:0)

使用indexOf

String[] myList = {
            "#abc #def",
            "#abc",
            "#def",
            "#xyz #def"
           };
int index = myList.indexOf("#abc");

并在index变量中,您将成为数组中搜索元素的索引

答案 4 :(得分:0)

您可以使用ArrayUtils

String[] myList = { "#abc #def", "#abc", "#def", "#xyz #def" };
int index =  ArrayUtils.indexOf(myList,"#def");