数组与集合的区别?

如题所述

一、主体不同

1、数组:是有序的元素序列。将有限个类型相同的变量的集合命名。

2、集合:具有某种特定性质的具体的或抽象的对象汇总而成的集体。

二、特点不同

1、数组:数组中的所有元素都具有相同类型。数组中的元素存储在一个连续性的内存块中,并通过索引来访问。

2、集合:给定一个集合,任给一个元素,该元素或者属于或者不属于该集合,二者必居其一,不允许有模棱两可的情况出现。


三、规则不同

1、数组:不给可初始化的数组赋初值,则全部元素均为0值。只能给元素逐个赋值,不能给数组整体赋值。

2、集合:集合中,每个元素的地位都是相同的,元素之间是无序的。集合上可以定义序关系,定义了序关系后,元素之间就可以按照序关系排序。


参考资料来源:百度百科-集合

参考资料来源:百度百科-数组

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-13

一、数组声明了它容纳的元素的类型,而集合不声明。

二、数组是静态的,一个数组实例具有固定的大小,一旦创建了就无法改变容量了。而集合是可以动态扩展容量,可以根据需要动态改变大小,集合提供更多的成员方法,能满足更多的需求。

三、数组的存放的类型只能是一种(基本类型/引用类型),集合存放的类型可以不是一种(不加泛型时添加的类型是Object)。

四、数组是java语言中内置的数据类型,是线性排列的,执行效率或者类型检查都是最快的。

扩展资料:

语言特点

1、简单性

Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。

Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。

Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

2、面向对象

Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。

每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。

Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),

这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。

3、分布性

Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。

4、编译和解释性

Java编译程序生成字节码(byte-code),而不是通常的机器码。Java字节码提供对体系结构中性的目标文件格式,代码设计成可有效地传送程序到多个平台。Java程序可以在任何实现了Java解释程序和运行系统(run-time system)的系统上运行。

在一个解释性的环境中,程序开发的标准“链接”阶段大大消失了。如果说Java还有一个链接阶段,它只是把新类装进环境的过程,它是增量式的、轻量级的过程。

因此,Java支持快速原型和容易试验,它将导致快速程序开发。这是一个与传统的、耗时的“编译、链接和测试”形成鲜明对比的精巧的开发过程。

参考资料来源:百度百科-java

本回答被网友采纳
第2个回答  推荐于2017-05-30
数组与集合的区别:
一:数组声明了它容纳的元素的类型,而集合不声明。这是由于集合以object形式来存储它们的元素。
二:一个数组实例具有固定的大小,不能伸缩。集合则可根据需要动态改变大小。
三:数组是一种可读/可写数据结构没有办法创建一个只读数组。然而可以使用集合提供的ReadOnly方 只读方式来使用集合。该方法将返回一个集合的只读版本。
泛型与集合的区别
泛型听起来很高深的一个词,但实际上它的作用很简单,就是提高c#程序的性能。
比如在计算机中经常用到一些数据结构,如队列,链表等,而其中的元素以前一般这么定义:object a=new object();
这样就带来一个严重的问题,用object来表示元素没有逻辑问题,但每次拆箱、封箱就占用了大量的计算机资源,导致程序性能低下,而这部分内容恰恰一般都是程序的核心部分,如果使用object,那么程序的表现就比较糟糕。
而使用泛型则很好的解决这个问题,本质就是在编译阶段就告诉编译器,数据结构中元素的种类,既然编译器知道了元素的种类,自然就避免了拆箱、封箱的操作,从而显著提高c#程序的性能。
比如List<string>就直接使用string对象作为List的元素,而避免使用object对象带来的封箱、拆箱操作,从而提高程序性能。
可以自己编个小例子体验一下在使用数据结构时的情形,自然就理解了。本回答被网友采纳

数组与集合的区别?
一、主体不同 1、数组:是有序的元素序列。将有限个类型相同的变量的集合命名。2、集合:具有某种特定性质的具体的或抽象的对象汇总而成的集体。二、特点不同 1、数组:数组中的所有元素都具有相同类型。数组中的元素存储在一个连续性的内存块中,并通过索引来访问。2、集合:给定一个集合,任给一个...

数组与集合有什么区别
一、指代不同 1、集合:是数学中一个基本概念,也是集合论的主要研究对象。2、数组:将有限个类型相同的变量的集合命名,是有序的元素序列。二、用处不同 1、集合:指具有某种特定性质的具体的或抽象的对象汇总而成的集体。其中,构成集合的这些对象则称为该集合的元素 。2、数组:是在程序设计中,...

数组与集合的区别
一、数组声明了它容纳的元素的类型,而集合不声明。二、数组是静态的,一个数组实例具有固定的大小,一旦创建了就无法改变容量了。而集合是可以动态扩展容量,可以根据需要动态改变大小,集合提供更多的成员方法,能满足更多的需求。三、数组的存放的类型只能是一种(基本类型\/引用类型),集合存放的类型可以...

集合和数组区别 数组与集合区别
具体如下:1)数组的效率高于集合类.2)数组能存放基本数据类型和对象,而集合类中只能放对象。3)数组容量固定且无法动态改变,集合类容量动态改变。4)数组无法判断其中实际存有多少元素,length只告诉了array的容量。5)集合有多种实现方式和不同的适用场合,而不像数组仅采用顺序表方式。6)集合以类...

集合 和 数组 的区别
数组与集合的区别:一:数组声明了它容纳的元素的类型,而集合不声明。这是由于集合以object形式来存储它们的元素。二:一个数组实例具有固定的大小,不能伸缩。集合则可根据需要动态改变大小。三:数组是一种可读\/可写数据结构没有办法创建一个只读数组。然而可以使用集合提供的ReadOnly方 只读方式来...

java语言中集合与数组的区别是什么?
对JAVA的集合的理解是相对于数组,区别:\\x0d\\x0a1)数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型\/引用类型)\\x0d\\x0a2)JAVA集合可以存储和操作数目不固定的一组数据。\\x0d\\x0a 3)JAVA集合只能存放引用类型的的数据,不能存放基本数据类型;数组可以。\\x0d\\x0a(...

C#集合和数组的区别
下面以List集合为例,具体说明集合与数组的区别:1、定义的格式 集合:List <数据类型> 变量名;数组:数据类型 [ ] 变量名;2、赋值 集合:变量名 = new List <数据类型> ( ); 集合是不定长的,所以赋值时无须制定长度,赋值后长度可以变化。数组:变量名 = new 数据类型 [长度]; 由于数据...

laravel中集合和数组的区别是什么
区别是:所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便, 把具有...

集合、列表和数组的区别
集合、列表与数组是编程中常用的数据结构,它们各自有着不同的特点与用途。集合是一个由确定元素构成的整体,其内部元素无序排列,且元素类型不必相同。列表则是由数据项构成的序列,元素按照一定的线性顺序排列。列表内的元素类型可能不一致,长度可以变化。列表中的元素在内存中可能是连续的,也可能是不...

数组和集合的区别及深入了解,相同类型
数组只能存储一种数据类型,而集合能存储任意数据能行,不要把集合想得太复杂了,你就把集合看成是一种能装多种数据类型的数组就是了,集合的用法也跟数组差不多

相似回答