A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点

48 个回复

倒序浏览
1、集合和数组的区别?
答:
(1).可变性:
集合:集合的长度是可变的,因为集合的底层就是数组,当增删元素的时候,会进行数组的扩容。
数组:数组的长度是固定的,一创建就固定
(2).储存数据类型
集合:只能储存引用数据类型
数组:基本数据类型和引用数据类型

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
答:
迭代器:集合专用的遍历方式
增强for:和for循环遍历写法相似,用于集合的遍历
增强for和普通for循环的区别:
(1)索引值
for循环中能索引值
增强for中不能操作索引值
(2)增删元素
在for循环中可以进行集合的增删元素
增强for中不能进行集合的增删元素,会造成并发异常

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
答:
List接口下的集合:
ArrayList、LinkedList
ArrayList:底层是数组结构,特点是增删慢,查询快
LinkedList:底层是链表结构,特点是增删快,查询慢
回复 使用道具 举报

1、集合和数组的区别?
    数组长度不可变,集合可变;
    数组有索引值,集合的List及其子类有索引值,集合Set及其子类无索引值;
    集合比数组拥有更多的操作方法;
    数组是有序的,集合不一定有序;
    数组允许重复的元素,集合不一定允许重复(比如Set集合)。


2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
    迭代器是集合专属遍历工具,依赖于集合存在;
    增强for是一个迭代器遍历方法,它相对普通迭代器遍历简化了代码;
    增强for和普通for循环的区别:增强for调用了集合迭代器进行遍历,普通for循环是根据集合长度确定循环次数从而对集合遍历。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
    List接口下有ArrayList、LinkedList等;
    ArrayList底层是数组结构,具有查询快,增删慢的特点;
    LinkedList底层是链表结构,具有查询慢,增删快的特点。
回复 使用道具 举报
1、集合和数组的区别?
集合存储数据的可变容器,只能存储引用类型数据
数组存储数据的不可变容器,可以存储基本数据和引用类型数据
2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器:集合遍历专用方式
增强for:底层为迭代器的遍历方式,用于数组和集合Collection遍历
增强for和普通for循环的区别,实现原理不同:增强for不需要索引就能进行遍历,遍历的时候判断元素是否为空,遍历方式先判断是否有下一个元素,有就返回元素,并且把光标移到下一个元素,直到最后一个元素。
而普通for需要用到索引,通过索引进行各种操作。
3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点i
Arraylist:底层结构为数组,查询快增删慢,效率高,线程不安全
LinkedList:底层结构为链表,查询慢增删快,效率高,线程不安全
Vector:底层结构为数组,查询快增删慢,效率低,线程安全
回复 使用道具 举报
今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?

长度:数组不可变,集合可变

成员方法:集合拥有数组的所有成员方法,并且更多

存储类型:数组只能存储一种数据类型(基本和引用都可以),集合可以在不指定类型时存储多种类型(引用).

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?

提供某种方法逐一访问容器内的所有元素

例如:iterator(对 collection 进行迭代的迭代器)

增强for:jdk1.5以后推出的一种拥有迭代能力的for循环,本质上属于迭代器.

区别:增强for只能用于数组和实现了iterator接口的集合.,使用增强for无需获取数组或集合的长度和索引,增强for不能在循环内增删元素.

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点

arraylist集合底层是数组结构,特点是增删元素效率低,查询元素效率高.

LinkedList集合底层是链表结构,特点是增删元素效率高,查询元素效率低.

对于随机访问get和set,ArrayList效率优于LinkedList,因为LinkedList要移动指针。                  

对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。
回复 使用道具 举报

1、集合和数组的区别?
答:集合是java中一个长度可变的存储容器,而数组的长度不可变。



2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
答:迭代器是Collection接口的通用遍历方式,可以遍历带索引的集合,也可以遍历不带索引的集合。
    增强for循环是一个简化数组和Collection集合的遍历方式,其内部原理是一个Iterator迭代器。
    增强for循环在遍历过程中不允许增删改查,否则会发生并发修改异常;普通for循环在遍历时可以对集合进行增删改查的操作。



3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
答:List接口有三种实现类,分别是Vector、ArrayList以及LinkedList。
    ArrayList实现类,底层就是使用数组作为数据结构进行数据的存储和取出,特点是查询快(因为可以根据索引值查询元素),增删慢(因为增删都要创建新的数组然后进行增删操作)。
    LinkedList实现类,其底层就是使用链表作为数据结构进行数据的存储和取出,特定是增删快(增删时不用重新创建,直接改变首尾地址值即可),查询慢(因为地址值不连续,每次查询都要从头开始)。
回复 使用道具 举报
1、集合和数组的区别?

数组的长度不可变,集合的长度可以改变

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?

迭代器是集合专用的遍历方式
增强for其实是迭代器的封装。
增强for:没有索引值,不能增删改
for循环有索引值,可以对集合进行增删改

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点

ArrayList:底层的数据结构是数组,特点:查询快,增删慢
LinkedList:底层的数据结构是链表,特点:增删快,查询慢
回复 使用道具 举报

今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?
数组的长度是固定的,集合的长度是可变的。
数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象,而且对象的类型可以不一致,在当对象多的时候使用集合进行存储


2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器:在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出,继续判断,如果还有就继续取出,直到把集合中的所有元素取出

增强for:是专门用来遍历数组和集合的,他的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。

普通for:有索引,可以对集合进行增删操作。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
ArrayList集合:底层是数组结构实现,查询快、增删慢
LinkedList集合:底层是链表结构实现,查询慢、增删快
回复 使用道具 举报

今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?

数组的长度是不可改变的,而集合的可以随时增加元素,长度可变。

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?

迭代器是集合专用的遍历方式,增强for是不带索引的遍历方式,而普通for是带索引的方式,一般不需要用到索引的时候推荐使用增强for循环遍历集合更方便。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点

List接口下有ArrayList和Linkedlist,ArrayList底层是数组结构模式,具有查询快、增删慢的特点,LinkedList的底层使用链表数据结构,具有查询慢,增删快的特点。
回复 使用道具 举报
LPY 中级黑马 2019-4-23 21:26:32
7#


今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?
数组的长度是固定的,集合的长度是可变的。
数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象,而且对象的类型可以不一致,在当对象多的时候使用集合进行存储


2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器:在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出,继续判断,如果还有就继续取出,直到把集合中的所有元素取出

增强for:是专门用来遍历数组和集合的,他的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。

普通for:有索引,可以对集合进行增删操作。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
ArrayList集合:底层是数组结构实现,查询快、增删慢
LinkedList集合:底层是链表结构实现,查询慢、增删快
回复 使用道具 举报

今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?
数组的长度不可变的,存储的元素必须是同一类型的,集合长度可变,存储对象,
而且对象的类型可以不一致,当对象多的时候使用集合存储。

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器是为无序的集合遍历元素的工具,原理:先判断集合是否有元素,有则取出,
继续判断,直到把集合中全部元素取出为止。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
list下面有ArrayList集合--使用的是数组结构实现,查询快,增删慢;
LinkedList集合--使用链表结构实现,查询慢,增删快。
回复 使用道具 举报

今天我们开始了集合的学习,请根据自己的理解回答下面问题:

1、集合和数组的区别?
数组的长度是固定的,集合的长度是可变的。
数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象,而且对象的类型可以不一致,在当对象多的时候使用集合进行存储


2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器:在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出,继续判断,如果还有就继续取出,直到把集合中的所有元素取出

增强for:是专门用来遍历数组和集合的,他的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。

普通for:有索引,可以对集合进行增删操作。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
ArrayList集合:底层是数组结构实现,查询快、增删慢
LinkedList集合:底层是链表结构实现,查询慢、增删快
回复 使用道具 举报
1、集合和数组的区别?
集合长度可变,不可存储基本数据类型;
数字长度固定,可以存储基本数据类型;

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器是集合的专用遍历方式;
增强for底层是用迭代器实现的,便捷的遍历集合/数组的方式:
格式:
[Java] 纯文本查看 复制代码
for(元素数据类型 变量名 : 数组/集合对象名) {
    循环体;
}


增强for遍历集合(数组除外)时不能进行增删等修改集合的操作,且没有索引值;
普通for遍历集合时可以进行增删等修改集合的操作,能得到索引值;

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
主要有二种 ArrayList 和 LinkedList;
ArratList 底层用数组实现,特点:增删慢,查询快;
LinkedList 底层用链表实现,特点:增删快,查询慢;
回复 使用道具 举报
郑峰

1、集合和数组的区别?
答:
集合:提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变
数组:数组长度不可变

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
答:
迭代器:沿固定方向遍历的列表迭代器,在迭代期间修改列表,并获取列表中迭代器的当前位置
增强for:for(元素数据类型 变量名 : 数组/集合对象名) {
            循环体;
        }
        最方便的遍历语句,与for语句比较增强for底层原理为迭代器,循环体内部不可使用集合元素的删减语句,且没有索引值

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
答:List接口下有ArrayList和LinkedList集合
ArrayList集合底层使用数组结构,具有查看快,删减慢的特点
LinkedList集合底层使用链表结构,具有删减快,查看慢的特点
回复 使用道具 举报
1、集合和数组的区别?
(1)集合长度可变,数组长度不可变;
(2)集合只能存取引用数据类型,数组能存取基本数据类型和引用类型
2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器是一个接口,用于集合的遍历;
增强for是一种遍历集合的方式,底层用迭代器实现。
(1)普通for循环使用索引进行遍历,无法遍历Set等无索引的集合,增强for使用迭代器实现能遍历所有集合;
(2)普通for循环能在遍历过程中增删集合,增强for会出现并发修改异常。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
ArrayList,底层使用数组结构,查询速度更快,增删慢;
LinkedList,底层使用链表结构,增删速度快,查询慢。
回复 使用道具 举报
1、集合和数组的区别?
集合长度可以改变,存储基本数据类型需要对应包装类
数组长度不能改变,可以存储基本数据类型和引用数据类型
2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
用来遍历没有索引的集合
增强for底层也是一个迭代器同样用于没有索引的集合
增强for不能索引也不能增删会并发修改异常
普通for可以索引,能增删正常使用
3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
ArrayList和LinkedlList,
ArrayList是数据结构是数组,增删慢有索引查询快
LinkedlList数据结构是链表,增删快直接找到地址值改变指针指向,查询慢需要从头一个个对比查询
回复 使用道具 举报
1、集合和数组的区别?
集合长度可变,不可存储基本数据类型;
数字长度固定,可以存储基本数据类型;

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器是集合的专用遍历方式;
增强for底层是用迭代器实现的,便捷的遍历集合/数组的方式:
格式:
for(元素数据类型 变量名 : 数组/集合对象名) {
    循环体;
}

增强for遍历集合(数组除外)时不能进行增删等修改集合的操作,且没有索引值;
普通for遍历集合时可以进行增删等修改集合的操作,能得到索引值;



3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
主要有二种 ArrayList 和 LinkedList;
ArratList 底层用数组实现,特点:增删慢,查询快;
LinkedList 底层用链表实现,特点:增删快,查询慢;
回复 使用道具 举报
1、集合和数组的区别?
数组的长度是固定的,集合的长度是可变的。
数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象,而且对象的类型可以不一致,在当对象多的时候使用集合进行存储

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器:在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出,继续判断,如果还有就继续取出,直到把集合中的所有元素取出

增强for:是专门用来遍历数组和集合的,他的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。

普通for:有索引,可以对集合进行增删操作。


3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
答:List接口下有ArrayList和LinkedList集合
ArrayList集合底层使用数组结构,具有查看快,删减慢的特点
LinkedList集合底层使用链表结构,具有删减快,查看慢的特点
回复 使用道具 举报

1、集合和数组的区别?
答:   集合是一种存储空间可变的存储模型 ,   存储的数据容量可以随时发生改变
       数组就是存储数据长度的固定容器 , 存储多个数据的数据类型要一致

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
答: 迭代器 ,   集合的专用遍历方式
     增强for ,  简化数组和Collection集合的遍历 .    内部原理是一个lterator迭代器
     普通for和增强for的区别 ,  增强for简略了普通for的写法, 增强for底层是迭代器

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
答:  ArrayList和LinkedList
        ArrayList的底层是数组, 增删慢,查询快       
        LinkedList的底层是链表, 增删快,查询慢
回复 使用道具 举报
1、集合和数组的区别?
集合的底层是包含数组操作的。
数组长度一旦确定了,不能再更改,集合作为容器可以更改存储长度。


2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器是用来专门遍历数组的。增强for只是单纯用于遍历数组,没有索引值的参与。普通for是利用集合的索引值来遍历集合的。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
有ArrayList 和  LinkList    ArrayList是使用数组结构,遍历快,增删慢。LinkList是使用链表结构,遍历慢,增删快。
回复 使用道具 举报
1、集合和数组的区别?
数组的长度是固定的,集合的长度是可变的。
数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象,而且对象的类型可以不一致,在当对象多的时候使用集合进行存储


2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
迭代器:在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出,继续判断,如果还有就继续取出,直到把集合中的所有元素取出

增强for:是专门用来遍历数组和集合的,他的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。

普通for:有索引,可以对集合进行增删操作。

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
ArrayList集合:底层是数组结构实现,查询快、增删慢
LinkedList集合:底层是链表结构实现,查询慢、增删快
回复 使用道具 举报

1、集合和数组的区别?
答:   集合是一种存储空间可变的存储模型 ,   存储的数据容量可以随时发生改变
       数组就是存储数据长度的固定容器 , 存储多个数据的数据类型要一致

2、什么是迭代器,什么是增强for,增强for和普通for循环的区别?
答: 迭代器 ,   集合的专用遍历方式
     增强for ,  简化数组和Collection集合的遍历 .    内部原理是一个lterator迭代器
     普通for和增强for的区别 ,  增强for简略了普通for的写法, 增强for底层是迭代器

3、List接口下都有哪些集合,他们底层各自使用什么数据结构,有什么特点
答:  ArrayList和LinkedList
        ArrayList的底层是数组, 增删慢,查询快       
        LinkedList的底层是链表, 增删快,查询慢
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马