加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala DoubleLinkedList中的当前元素是什么?

发布时间:2020-12-16 09:11:01 所属栏目:安全 来源:网络整理
导读:我正在查看 using a DoubleLinkedList.它的remove()方法说“从双链表中删除当前节点”.但在页面中没有其他对当前的引用. 当前的节点是什么,我该如何设置呢,这绝对不是删除项目的唯一方法吗? 解决方法 一个DoubleLinkedList同时是列表本身和列表节点,类似于:
我正在查看 using a DoubleLinkedList.它的remove()方法说“从双链表中删除当前节点”.但在页面中没有其他对当前的引用.

当前的节点是什么,我该如何设置呢,这绝对不是删除项目的唯一方法吗?

解决方法

一个DoubleLinkedList同时是列表本身和列表节点,类似于::一个常规列表.您可以分别从下一个和上一个单元格导航到下一个单元格,或前一个单元格,然后使用elem获取单元格的值.

scala> val list = collection.mutable.DoubleLinkedList(1,2,3,4,5)
list: scala.collection.mutable.DoubleLinkedList[Int] = DoubleLinkedList(1,5)

scala> list.next.next.remove() // list.next.next points on 3rd cell

scala> list
res0: scala.collection.mutable.DoubleLinkedList[Int] = DoubleLinkedList(1,5)

如果您删除第一个单元格,请小心,因为您需要重新分配您的列表到下一个单元格的var:

scala> val list = collection.mutable.DoubleLinkedList(1,5)

scala> list.remove() // remove first item

scala> list // this is now a 'dangling' cell,although it still points to the rest of the list
res6: scala.collection.mutable.DoubleLinkedList[Int] = DoubleLinkedList(1,5) // uh? didn't I remove the first cell?

scala> list.next.prev // we can check that it is not pointed back to by its next cell
res7: scala.collection.mutable.DoubleLinkedList[Int] = null

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读