郁闷,很简单的问题都不会,请大家帮忙
写了一个ArrayList,里面的元素有ID,NAME属性,知道元素NAME想取出list里的这个元素,怎么办?求代码!

解决方案 »

  1.   

    最简单的穷举法,假设你的类型叫Element:
    for(int i = 0;i<list.size();i++)
    {
      if(((Element)list.get(i)).NAME.equals(NAME))//假设你的NAME是String类型的
      {
         此时的list.get(i)就是你要的元素
      }
    }
      

  2.   

    名字如何二分法啊?倒是可以做一个索引,按索引查找,可是那样就变成HashTable了,还不如直接用
      

  3.   

    Sorry,想了一下,确实是可以用二分法,只是比较起来麻烦而已
      

  4.   

    有Name,有value,而且要根据name搜索,那就不要用List。
    你可以用一个 Map (name  ->  List (Value1, Value2) )这样的数据结构不久ok了。
      

  5.   

    二分?怎么二分?
    二分得先排序!ArrayList有序吗?
      

  6.   

    import java.util.*;public class ArrayListTest{


    public static void main(String args[]){
    ArrayList al = new ArrayList();
    al.add("ok");
    al.add("ko");
    al.add("name");
    Iterator iterator = al.iterator();
    String temp = null;
    //法一
    while(iterator.hasNext()){
    temp = (String)iterator.next();

    System.out.println( "The first is:" + temp);
    if(temp.equals("name")){
    break;
    }
    }

    //法二
    int number = al.indexOf("name");
    String name = (String)al.get(number);
    System.out.println("The second is:" + name);
    }
    }
    这样好象可以。