`
kankan1218
  • 浏览: 277603 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Collection 和 Collections;Array与Arrays的区别;Array与ArrayList

阅读更多
Collection 和 Collections的区别:

Collection是个java.util下的接口,它是各种集合结构的父接口。继承与他的接口主要有Set 和List.

Collections是个java.util下的专用静态类,它包含有各种有关集合操作的静态方法。提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

Array与Arrays的区别:

1.数组类Array,是Java中最基本的一个存储结构。提供了动态创建和访问 Java 数组的方法。其中的元素的类型必须相同。效率高,但容量固定且无法动态改变。 它无法判断其中实际存有多少元素,length只是告诉我们array的容量。

2、Arrays类,此静态类专门用来操作array ,提供搜索、排序、复制等静态方法。equals():比较两个array是否相等。array拥有相同元素个数,且所有对应元素两两相等。 sort():用来对array进行排序。 binarySearch():在排好序的array中寻找元素。

Array与ArrayList的主要区别:
1)精辟阐述:
可以将 ArrayList想象成一种“会自动扩增容量的Array”。

2)Array([]):最高效;但是其容量固定且无法动态改变;
     ArrayList:  容量可动态增长;但牺牲效率;

3)建议:
基于效率和类型检验,应尽可能使用Array,无法确定数组大小时才使用ArrayList!
不过当你试着解决更一般化的问题时,Array的功能就可能过于受限。

分享到:
评论

相关推荐

    Array和Collection相互转换以及copy深度的小测

    2. **CopyOf()** 和 **CopyOfRange()**: 这是`Arrays`类提供的静态方法,可以创建一个新的数组并复制原有数组的内容,然后用`Collections.addAll()`将其转换为`Collection`。 3. 自定义转换:如果你需要转换成其他...

    java ArrayList的使用与分析

    - **从数组创建 ArrayList**:`ArrayList list = new ArrayList(Arrays.asList(array));` 5. **线程安全与同步** - ArrayList 默认不是线程安全的,多线程环境下使用时需要手动同步,或者使用 `Collections....

    arrayliSt---listDemo

    ArrayList<String> fromArray = new ArrayList(Arrays.asList(array)); ``` 9. **线程安全性** ArrayList不是线程安全的,如果在多线程环境下操作,需要同步访问或使用`CopyOnWriteArrayList`。 10. **异常处理...

    java-array.zip_源代码;array

    5. `ArrayList`与`LinkedList`的区别:`ArrayList`基于动态数组,插入和删除效率相对较低,但随机访问速度快;`LinkedList`基于双向链表,插入和删除效率高,但随机访问慢。 三、函数操作 1. 方法:Java提供了一...

    Java集合类List-Set-Map的区别和联系.doc

    一、Array、Arrays 和 Collection Array 是 Java 中最基本的集合类,它是固定大小的、线程安全的,可以存储基本类型和对象类型的数据。Arrays 类是 Java 中提供的一个工具类,提供了数组的操作方法,如 equals()、...

    Java 最常见的 208 道面试题:第二模块答案

    **ArrayList 和 LinkedList 的区别**: - **数据结构**:ArrayList 使用数组,LinkedList 使用双向链表。 - **随机访问**:ArrayList 支持快速随机访问,而 LinkedList 访问需要从头或尾部遍历。 - **插入和删除**:...

    java集合Collection总结

    7. **集合转换(Collection to Array and vice versa)**:Arrays类提供了静态方法如toArray()将集合转换为数组,而ArrayList的构造函数则可以接受数组创建一个新的列表。 8. **并发集合(Concurrent Collections)**:...

    Java集合容器面试题(2022最新版)-重点.docx

    #### Collection与Collections的区别 - `Collection`是所有集合的根接口。 - `Collections`是针对集合类的一个工具类,提供了一系列静态方法用于操作集合。 #### TreeMap和TreeSet排序原理 - `TreeMap`和`TreeSet`...

    2023版Java面试题.pdf

    5. Collection 和 Collections 的区别:Collection 是一个接口,而 Collections 是一个工具类。 Java 多线程: 1. 进程和线程有什么区别?:进程是操作系统的基本执行单元,而线程是进程中的执行单元。 2. 多线程...

    2020版Java容器 17 道.pdf

    2. **Collection和Collections的区别?** Collection是一个接口,它是所有单列集合的父接口,定义了集合的基本操作。Collections则是一个工具类,提供了许多静态方法,用于操作集合,如排序、查找、反转等。 3. **...

    认识类集、Collection接口

    本文将深入探讨`Collection`接口,它是所有类集的基础,以及与之相关的Java类和接口。 `Collection`接口位于`java.util`包下,是Java集合框架的顶级接口。它定义了存储、操作和遍历对象的基本方法。`Collection`...

    Java集合框架ArrayList源码分析(一)

    3. `ArrayList(Collection<? extends E> c)`:根据给定的集合创建列表,元素顺序与集合中的一致。首先调用`c.toArray()`获取元素数组,然后确保数组类型为Object[],最后将数组复制到内部的`elementData`数组。 ###...

    Java中Collection、List、Set、Map之间的关系总结

    Collection和Collections是Java.util下的两个基本概念。Collection是Java.util下的一个接口,是各种集合结构的父接口。Collections是Java.util下的一个专用静态类,他包含各种集合操作的静态方法,包括对集合的搜索...

    java集合相关操作

    在Java中,集合被定义为一个容器,其中包括映射(Map)、集合(Set)、列表(List)、数组(Array)和散列表(Hashtable)等抽象数据结构。这些集合类和接口构成了Java集合框架,它们位于`java.util`包中。 ### 数组类 数组类...

    BATjava面试含答案

    6. List>Array 使用 toArray 方法,Array>List 使用 Arrays.asList(array) 方法,由于它是固定的,不固定的可以使用 new ArrayList(Arrays.asList(array))。 二、Map 相关知识点 1. 常用的 Map 集合有 HashMap、...

    java程序员面试宝典

    5. **工具类使用**:`Collections`和`Arrays`提供的实用方法。 #### 集合框架详解: ##### 1. `Collection`与`Map`接口 - **`Collection`接口**:代表一组对象,可以是有序或无序的。`Collection`的主要实现包括`...

    java集合类的基本用法

    `Collections`类提供了一组静态方法来操作和处理`Collection`接口的实现类实例,例如排序、填充等。 **示例代码解析**: ```java Collections.fill(list, "Fill"); ``` 这行代码将`List`中的所有元素替换为"Fill"。...

    张孝祥Java面试技巧

    - **熟悉常用集合操作**:能够熟练使用`Collections`和`Arrays`工具类中的方法,如`Collections.sort()`、`Arrays.copyOf()`等。 综上所述,在Java面试中,深入理解和灵活运用集合框架是展示自己编程能力的重要环节...

Global site tag (gtag.js) - Google Analytics