java LinkedList 基本用法

LinkedList是对双链表的一种实现,插入删除时间开销是O(1),查找、随机访问时间开销是O(n)。

如果一个集合要求频繁随机插入删除,不要求随机访问,可以考虑采用LinkedList。


<span style="font-family: Arial, Helvetica, sans-serif;">//新建</span>
<span style="font-family: Arial, Helvetica, sans-serif;">LinkedList<String> lk = new LinkedList<String>();</span>

//在后面追加,正常的添加方式,用getLast()获得最晚push的元素,去掉push的注释,注释掉add,可以看到输出顺序颠倒。
lk.add("11");
lk.add("22");
lk.add("33");

<pre name="code" class="java"><span style="font-family: Arial, Helvetica, sans-serif;">//在前面添加,用getLast()获得最早push的元素</span>
<span style="font-family: Arial, Helvetica, sans-serif;">/</span><span style="font-family: Arial, Helvetica, sans-serif;">/lk.push("11");</span>
<span style="font-family: Arial, Helvetica, sans-serif;">//lk.push("22");</span>
//lk.push("33");

 
//O(1)的访问方法,获取头部、尾部元素
System.out.println(lk.getFirst());//out: 11
System.out.println(lk.getLast());//out: 33

//迭代器,最初指向第一个元素之前的位置,it.next()返回下一个元素,不断调用来遍历。
Iterator<String> it = lk.iterator();
while(it.hasNext()){
	System.out.println(it.next());//out: 11 22 33
}

//foreach遍历方式
for(String s:lk){
	System.out.println(s);//out: 11 22 33
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值