列表(list)和设置(set)的区别

大多数编程语言使用数组来存储一组相同类型的数据。数组的一个主要缺点是,一旦声明了数组大小,就不能修改它。如果程序员想存储一个超过数组大小的值,那么他应该创建一个新数组,并将现有元素复制到新数组中。在这些情况下,可以使用集合。在集合的支持下,可以添加元素、删除元素和许多其他操作。在Java等编程语言中有不同类型的集合。List和Set是集合层次结构的接口。其他接口的基本接口是Collection。L...

关键区别-列表与集合

大多数编程语言使用数组来存储一组相同类型的数据。数组的一个主要缺点是,一旦声明了数组大小,就不能修改它。如果程序员想存储一个超过数组大小的值,那么他应该创建一个新数组,并将现有元素复制到新数组中。在这些情况下,可以使用集合。在集合的支持下,可以添加元素、删除元素和许多其他操作。在Java等编程语言中有不同类型的集合。List和Set是集合层次结构的接口。其他接口的基本接口是Collection。List和Set的关键区别在于List支持多次存储同一个元素,Set不支持多次存储同一个元素。因此,集合不允许重复。

目录

1. 概述和主要区别
2. 什么是列表
3.设置了什么
4. 列表与集合的相似性
5. 并列比较-以表格形式列出与设置
6. 摘要

什么是列表(list)?

列表是扩展集合接口的接口。集合接口中有许多方法。add方法有助于添加元素。“remove方法”是删除元素。“addAll method”用于添加多个元素,而“removeAll method”用于从集合中移除元素。contains方法有助于查找列表中是否存在特定对象。“containsAll”用于查找集合中是否存在一组对象。iterator方法用于循环遍历列表中的项。由于List扩展了Collection,所以所有的Collection方法都属于List。除了这些方法之外,列表还有get和set等方法。程序员可以使用get方法在特定索引处获取值。程序员可以使用set方法在特定索引处设置值。“indexOf”用于查找元素的索引。

在列表中,可以根据位置执行操作。程序员可以提供要添加到索引中的数据元素。所以它会被添加到具体的索引中。如果程序员没有给出索引,元素将被添加到列表的末尾。它还保持**的顺序。如果添加了元素1,然后添加了元素2,那么元素1将位于元素2之前。

列表(list)和设置(set)的区别

图01:列表和设置

ArrayList,LinkedList,Vector是一些实现List的类。在ArrayList中,访问元素的速度很快,但**和删除速度较低。ArrayList不是线程安全的。从多个线程访问同一个ArrayList可能不会得到相同的结果。在LinkedList中,元素同时链接到backward和forward。使用LinkedList**和删除元素比ArrayList快。LinkedList实现列表和队列。Vector类似于ArrayList,但它是安全的,因为所有方法都是同步的。

什么是设置(set)?

Set是扩展集合接口的接口。由于Set接口扩展了Collection,所以所有的Collection方法也都属于Set。集合不支持重复值。因此,程序员不能将同一个元素存储两次。它维护一组独特的元素。SortedSet接口扩展了Set接口。SortedSet按排序顺序维护元素。NavigableSet接口扩展了SortedSet。NavigableSet提供了导航方法,如lower、floor、天花板等。

HashSet、LinkedHashSet和TreeSet是一些实现Set接口的类。HashSet实现Set接口。它不保持**的顺序。如果值以a,x,b的形式**,它可能存储为,x,a,b。LinkedSet保持**顺序。如果元素以a,x,b的顺序**,则存储顺序为a,x,b。树集实现Set和NavigableSet。它不保持**的顺序,但按排序的顺序存储元素。如果**的顺序是a、c、b,那么元素将被存储为a、b、c。所有HashSet、LinkedHashSet和TreeSet都不会有任何重复的元素。

列表(list)和设置(set)的共同点

  • 列表和集合接口都扩展了集合接口。
  • 列表和集合都支持添加、删除元素等操作。

列表(list)和设置(set)的区别

列表与集合
列表接口是集合的子接口,它包含根据索引执行**、删除等操作的方法。 Set Interface是集合的子接口,它包含在维护唯一元素的同时执行**、删除元素等操作的方法。
班级
ArrayList、Vector和LinkedList是实现列表接口的类。 HashSet、LinkedHashSet和TreeSet是实现Set接口的类。
元素复制
列表支持元素的重复。 集合不支持元素的重复。元素是独一无二的。

总结 - 列表(list) vs. 设置(set)

集合用于动态存储元素。Java等编程语言提供了集合接口。列表和集合是两个属于集合接口的接口。两个接口都扩展了集合。本文讨论了列表与集合的区别。List和Set的关键区别在于List支持多次存储同一个元素,Set不支持多次存储同一个元素。集合始终保持唯一的元素。

引用

  • 发表于 2020-10-19 09:09
  • 阅读 ( 208 )
  • 分类:IT

你可能感兴趣的文章

列表(list)和设置(set)的区别

关键区别-列表与集合 大多数编程语言使用数组来存储一组相同类型的数据。数组的一个主要缺点是,一旦声明了数组大小,就不能修改它。如果程序员想存储一个超过数组大小的值,那么他应该创建一个新数组,并将现有元...

  • 发布于 2020-10-19 09:09
  • 阅读 ( 208 )

内存缓存(memcached)和雷迪斯(redis)的区别

...,它使用数据结构来存储数据。主要数据结构有字符串、列表、集合、排序集和散列、位图等,Redis是用C语言编写的,是一个开源的跨平台系统。 图01:Redis Redis的主要优点是它将数据保存在内存中。这使得Redis速度很快。它还...

  • 发布于 2020-10-19 23:25
  • 阅读 ( 156 )

机顶盒(set top box)和dth公司(dth)的区别

...用户在另一端解码和观看。 什么是机顶盒(a set-top box)? 设置盒是一种接收数字信号、解码并在电视显示器上显示的设备。接收到的信号可以是电视信号或因特网数据信号。信号可以通过电缆或电话连接接收。过去,机顶盒主要...

  • 发布于 2020-10-28 00:02
  • 阅读 ( 373 )

如何查看Windows10上次安装主要更新的时间

...窗口中,单击“系统” 在“系统”窗格中,向下滚动到列表底部,然后在侧边栏中选择“关于”。 在“关于”页上,向下滚动到“Windows规范”部分。在“Installed on”标题的右侧可以找到最新的Windows主要版本安装日期。 Tip: Th...

  • 发布于 2021-03-31 22:47
  • 阅读 ( 141 )

如何使推式通话

...讲话。 一键通设置以前位于Steam设置菜单下,但它在朋友列表设置菜单中找到了一个新家。要访问此菜单,请在您的计算机上启动Steam应用程序,然后单击Steam应用程序右下角的“朋友和聊天”图标打开您的朋友列表。 在Friends&a...

  • 发布于 2021-04-02 11:15
  • 阅读 ( 120 )

如何在gmail中轻松地发送电子邮件

邮件列表是电子邮件库中的一个老工具,但它们在Gmail中的实现并不是很直观。请继续阅读,我们将向您展示如何使用您的Gmail帐户向群发送电子邮件。 Dear How-To Geek, I’m probably going to **ack myself when you show me how easy it is, but right n...

  • 发布于 2021-04-08 20:21
  • 阅读 ( 206 )

如何在xbmc上重现频道冲浪体验

...一个家庭媒体服务器是非常棒的:漂亮的封面艺术,播放列表,所有的媒体就在你的指尖。然而,有一点媒体中心做不到,那就是重新创造那种漫无目的地浏览频道的感觉,只是为了搔搔看电视的痒。请继续阅读,我们将向您展...

  • 发布于 2021-04-11 07:15
  • 阅读 ( 181 )

set listener创建艺术家最近表演的spotify播放列表

...Set Listener是一个Web应用程序,它可以获取乐队最近的布景列表,并将其转换为Spotify播放列表。Set Listener从Setlist中提取,因此这里列出的任何节目基本上都可以工作。一旦你搜索一个节目,只需点击“保存这个播放列表到Spotify”...

  • 发布于 2021-05-21 03:12
  • 阅读 ( 75 )

在五分钟内推出你自己的完美组织的可打印在线简历

...改为所需的技能类别(例如“软件”),并将“相关技能列表”更改为属于该类别的技能(例如“精通Microsoft绘画、扫雷和纸牌”)。奖项和荣誉到现在为止,你应该期望奖项和荣誉部分的工作方式和之前的许多其他部分一样。...

  • 发布于 2021-05-25 17:13
  • 阅读 ( 185 )

在OSX中弹出dmg时自动删除它

...]默认按钮1返回结束如果将“我的选择”设置为“选择”列表的项目1将“我的种类”设置为“我的选择”的种类将“我的名称”设置为“我的选择”的名称如果“我的种类”不是“卷”,则显示对话框¬ "请选择一个从磁盘映像...

  • 发布于 2021-05-25 23:31
  • 阅读 ( 116 )
w1attj9c9e6q8v
w1attj9c9e6q8v

0 篇文章

相关推荐