ArrayList过滤器基于android中的一些条件

时间:2014-01-22 11:22:37

标签: java android

我在android中有一个ArrayList,其中包含多个名称。假设用户输入了R,所以我想计算{以R {开头的ArrayList中有多少个名字,例如如果arraylist包含Ashok,Bimal,Ram,Raju,sunita那么它应该返回2,因为有2个名称以R

开头

5 个答案:

答案 0 :(得分:4)

遍历ArrayList并在检查返回true时递增整数变量。

答案 1 :(得分:3)

    int count = 0;
    ArrayList<String> _list;//ur arraylist with names
    for (String names : _list) {
        if (names.startsWith("R")) {
            count++;
        }

    }
    System.out.println(count);

答案 2 :(得分:0)

    ArrayList<String> list = new ArrayList<String>();
    list.add("Ashok");
    list.add("Bimal");
    list.add("Ram");
    list.add("Raju");
    list.add("sunita");
    int count  = 0;
    for(String s: list){
        if(s.startsWith("R")){
            count++;
        }
    }
    System.out.println(count);

答案 3 :(得分:0)

在你的onCreate方法

int countToShow=counterMethod(character);
TextView  showCount=(TextView)findViewById(idOfYourTextView);
showCount.setText(String.valueOf(count));

在您的活动中制作另一种方法如下: -

public int counterMethod(String character){
    int count=0;
    for(int i=0; i<arrayListName.size();i++)
    {
        String name=arrayListName.get[i];
        if(name.startswith(character))
            count++;
    }
return count;
}

答案 4 :(得分:-3)

尝试以下代码......

enter code here
List<String> list = new ArrayList<String>();
list.add("How are you");
list.add("How you doing");
list.add("Joe");
list.add("Mike");

 Collection<String> filtered = Collections2.filter(list,
Predicates.containsPattern("How"));
 print(filtered);