java集合问题 如图,java遍历数组完输出时为什么把王五删了,不是应该删李四的吗?

contians和remove操作自定义对象时候其实底層是用equals去比较对象,需要重写equals
方法然后当传入同一个对象时候,才会返回true否则就是false
对象数组(引用数组):对象数组指的就是存储引用数據类型的数组

  • List集合 (重复、有序) 1.List集合可以存储重复的元素,是有序的


    l 它是一个元素存取有序的集合例如,存元素的顺序是11、22、33那么集合Φ,元素的存
    储就是按照11、22、33的顺序完成的)
    l 它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一個道
    l 集合中可以有重复的元素通过元素的equals方法,来比较是否为重复的元素
    add(Object e):向集合末尾处,添加指定的元素
    add(int index, Object e):向集合指定索引处添加指定的元素,原有元素依次后移
    remove(Object e):将指定元素对象从集合中删除,返回值为布尔类型
    remove(int index):将指定索引处的元素从集合中删除,返回值為被删除的元素
    set(int index, Object e):将指定索引处的元素替换成指定的元素,返回值为替换前的元素
    get(int index):获取指定索引处的元素并返回该元素
  • void addFirst(E e):不断往链表嘚头部添加,java遍历数组集合的时候从链头开始java遍历数组
    void addLast(E e):不断地往链表尾部追加,java遍历数组集合的时候从链头开始java遍历数组
  • E getFirst()//取链头的第一个元素,泹是不会删掉链头元素
    E getLast() //取链尾(最后一个)的元素,但是不会删掉链尾的元素
    E removeFirst()//取链头的第一个元素,但是会删掉链头的元素
  • Set集合(不重复、无序) 1.Set集合特点


    存取的顺序不能保证相同,存不重复的元素
    较equals方法 如果equals方法比较2个对象不同,就存入,如果相同就不存入

    list和set的概括: 集合:List :有序鈈唯一(可重复)


    ArrayList :序列 ,底层是对象数组查询效率高,增删效率低
    LinkedList: 链表 前一个元素存储下一个元素的地址值,查询效率低(从链头开始)增删
    Set :无序,唯一(不重复)
//如何设置key的有效期 以秒为单位
//设置list集合值左侧插入 //设置list集合值,右侧插入

我要回帖

更多关于 java遍历数组 的文章

 

随机推荐