• LinkedList总结


    1,LinkedList也是继承了List的接口
    所以在LinkedList中存储的也是有序的,不唯一的数据
    它采用的是链表式储存,所以比较适合用来执行插入,删除等功能
    
    2,LinkedList特有的方法
    特有方法:添加元素,返回元素,删除并返回元素
    添加元素
    在列表的首部添加元素
    li.addFirst(news);
    在列表的末尾添加元素
    li.addLast(news);
    
    返回元素
    返回列表中的第一个元素
    li.getFirst();
    返回列表中的最后一个元素
    li.getLast();
    
    删除元素
    删除并返回列表中的第一个元素
    li.removeFirst();
    删除并返回列表中的最后一个元素
    li.removeLast();
    
    3,与ArrayList相同的方法
    添加
    li.add(null);
    li.add(0, null);
    
    获取
    li.get(0);
    
    对比查找
    li.contains(news);
    
    获取集合长度
    
    li.size();
    
    
    替换对象
    li.set(0, null);
    
    删除
    li.remove(0);
    li.remove(news);
    
    清空集合
    li.clear();
    
    特别方法:
    如果此集合包含指定集合中的所有元素, 则返回 true。
    li.containsAll(li);
    以相反的顺序返回此 deque 中元素的迭代器。元素将按从最后 (尾部) 到第一个 (头部) 的顺序返回。
    li.descendingIterator();
    移除此列表中指定元素的第一个匹配项 (当从从头到尾遍历列表时)。如果列表中不包含元素, 则它不变。
    li.removeFirstOccurrence(news);
    移除此列表中指定元素的最后一个匹配项 (当从从头到尾遍历列表时)。如果列表中不包含元素, 则它不变。
    li.removeLastOccurrence(news);
    检索但不移除此列表的头 (第一个元素)。
    li.element();
    返回此列表的哈希代码值。
    li.hashCode();
    如果此集合不包含任何元素, 则返回 true。
    li.isEmpty();
    
    示例:
    
    public class NewsLinkedList {
        public static void main(String[] args) {
            News news = new News(1, "北京终于放晴了!", "新闻社");
            News news2 = new News(2, "香港回归纪念日", "人民新闻");
            News news3 = new News(3, "假奶粉事件曝光", "人民新闻网");
    
            //创建LinkedList集合,适合进行删除,插入等功能
            LinkedList<News> li = new LinkedList<News>();
            li.add(news);
            li.add(news2);
            li.add(news3);
    
            //遍历,同样跟ArrayList一样也能用三种
            //第一种普通for循环
            for (int i = 0; i < li.size(); i++) {
                News n = li.get(i);
                System.out.println(n.getID()+"	"+n.getLitter()+"	"+n.getAuthor());
            }
            System.out.println("*****************************************");
            //第二种加强型for
            for (News n:li) {
                System.out.println(n.getID()+"	"+n.getLitter()+"	"+n.getAuthor());
            }
            System.out.println("*****************************************");
            //第三种迭代器
            Iterator<News> it = li.iterator();
            while (it.hasNext()) {
                News n = it.next();
                System.out.println(n.getID()+"	"+n.getLitter()+"	"+n.getAuthor());
            }
    
            //添加
            li.add(null);
            li.add(0, null);
    
            //获取
            li.get(0);
    
            //对比查找
            li.contains(news);
    
            //获取集合长度
            li.size();
    
            //替换对象
            li.set(0, null);
    
            //删除
            li.remove(0);
            li.remove(news);
    
            //清空集合
            li.clear();
    
            //特有方法:添加元素,返回元素,删除并返回元素
            //添加元素
            //1,在列表的首部添加元素
            li.addFirst(news);
            //2,在列表的末尾添加元素
            li.addLast(news);
    
            //返回元素
            //返回列表中的第一个元素
            li.getFirst();
            //返回列表中的最后一个元素
            li.getLast();
    
            //删除元素
            //删除并返回列表中的第一个元素
            li.removeFirst();
            //删除并返回列表中的最后一个元素
            li.removeLast();
    
            //如果此集合包含指定集合中的所有元素, 则返回 true。
            li.containsAll(li);
            //以相反的顺序返回此 deque 中元素的迭代器。元素将按从最后 (尾部) 到第一个 (头部) 的顺序返回。
            li.descendingIterator();
            //移除此列表中指定元素的第一个匹配项 (当从从头到尾遍历列表时)。如果列表中不包含元素, 则它不变。
            li.removeFirstOccurrence(news);
            //移除此列表中指定元素的最后一个匹配项 (当从从头到尾遍历列表时)。如果列表中不包含元素, 则它不变。
            li.removeLastOccurrence(news);
            //检索但不移除此列表的头 (第一个元素)。
            li.element();
            //返回此列表的哈希代码值。
            li.hashCode();
            //如果此集合不包含任何元素, 则返回 true。
            li.isEmpty();
                }
    }
  • 相关阅读:
    span与a元素的键盘聚焦性以及键盘点击性研究——张鑫旭
    小tip: 某简单的字符重叠与图形生成----张鑫旭
    HTML5 number类型文本框step属性的验证机制——张鑫旭
    小tip:FireFox下文本框/域百分比padding bug解决——张鑫旭
    视区相关单位vw, vh..简介以及可实际应用场景——张鑫旭
    好吧,CSS3 3D transform变换,不过如此!——张鑫旭
    HttpWebRequest.Proxy属性
    js动态函数
    js && ||
    eclipse工具栏sdk和avd图标
  • 原文地址:https://www.cnblogs.com/zhangmenghui/p/10575552.html
Copyright © 2020-2023  润新知