`

Java List集合的clear方法

    博客分类:
  • java
 
阅读更多

在使用list 结合的时候习惯了 list=null ;在创建这样的方式,但是发现使用list的clear 方法很不错,尤其是有大量循环的时候

1、list 接口  的ArrayList 类的clear() 方法源码如下:

 

[java] view plain copy
 
 print?
  1. /** 
  2.      * Removes all of the elements from this list.  The list will 
  3.      * be empty after this call returns. 
  4.      */  
  5.     public void clear() {  
  6.         modCount++;  
  7.   
  8.         // Let gc do its work  
  9.         for (int i = 0; i < size; i++)  
  10.             elementData[i] = null;  
  11.   
  12.         size = 0;  
  13.     }  


我们从中可以发现就是将list集合中的所有对象都释放了,而且集合也都空了,所以我们没必要多次创建list 集合而只需要调用一下 clear() 方法就可以了。

 

 

2、list 接口  的LinkedList类的clear() 方法源码如下:

 

[java] view plain copy
 
 print?
  1. public void clear() {  
  2.        // Clearing all of the links between nodes is "unnecessary", but:  
  3.        // - helps a generational GC if the discarded nodes inhabit  
  4.        //   more than one generation  
  5.        // - is sure to free memory even if there is a reachable Iterator  
  6.        for (Node<E> x = first; x != null; ) {  
  7.            Node<E> next = x.next;  
  8.            x.item = null;  
  9.            x.next = null;  
  10.            x.prev = null;  
  11.            x = next;  
  12.        }  
  13.        first = last = null;  
  14.        size = 0;  
  15.        modCount++;  
  16.    }  

 

 

从上面我们可以看到,不管是哪个实现类的clear 方式都是将里面的所有元素都释放了并且清空里面的属性  ,这样我们就不用再释放 创建新对象来保存内容而是可以直接将现有的集合制空再次使用

分享到:
评论

相关推荐

    java的list取之方法

    List是Java中最常用的集合类型之一,理解并熟练掌握它的使用方法对于日常开发来说至关重要。通过上面的学习,我们可以看到List提供了丰富的API来帮助我们处理数据。无论是简单的元素增删改查还是更复杂的排序和过滤...

    java中List对象列表实现去重或取出及排序的方法

    Java中List对象列表实现去重或取出及排序的方法 在Java中,对List对象列表实现去重或取出及排序是一种常见的操作。下面将详细介绍相关的方法和实现。 1. 实体类重写equals和hashCode方法 在Java中,想要去重List...

    java 集合部分笔记

    【Java集合】 Java集合框架是Java编程语言中用于存储和操作对象的工具,它提供了多种数据结构,如列表、集、映射等,以适应不同的数据处理需求。集合类通常位于`java.util`包下,是Java程序员必备的知识点。 1. **...

    java集合详解.pdf

    下面将详细介绍 Java 集合框架的实现原理和使用方法。 1.1 集合框架概述 Java 集合框架是 Java 语言中用于存储和操作数据的框架。它提供了一种统一的方式来存储和操作不同类型的数据。集合框架包括 Collection、...

    java中关于集合的操作

    - **删除元素**: `remove()`用于删除指定元素,`clear()`用于清空集合。 - **查找元素**: `contains()`检查元素是否存在,`indexOf()`查找元素索引。 - **迭代器**: 使用`iterator()`获取迭代器,遍历集合。 - *...

    Java数组去重 集合List去重的常用方法总结

    ### Java数组去重与List集合去重的常用方法总结 #### 一、Java数组去重方法 在实际的开发工作中,经常会遇到需要处理数组中重复元素的问题。下面将详细介绍两种常用的数组去重方法。 ##### 方法一:For双循环法 ...

    Java集合框架总结

    - `void clear()`:清除集合中的所有元素。 - `void removeAll(Collection c)`:移除集合中出现在指定集合中的所有元素。 - `void retainAll(Collection c)`:保留集合中出现在指定集合中的元素,移除其他元素。 ...

    java基础之集合

    - **clear()**:清空集合中的所有对象。 - **isEmpty()**:判断集合是否为空。 - **contains(Object o)**:检查集合是否包含指定的对象。 - **iterator()**:返回一个迭代器,可以用来遍历集合中的元素。 - **remove...

    Java集合类原理详解.pdf

    - `clear()`:清除集合中的所有元素。 ##### 1.2.2 迭代器 迭代器(Iterator)接口提供了遍历集合的方法,通过`hasNext()`判断是否还有下一个元素,通过`next()`获取下一个元素。 ```java Iterator&lt;String&gt; ...

    java的集合帮助文档

    1. `List`: 有序的集合,允许重复元素,保持插入顺序。常见的实现类有ArrayList和LinkedList。 2. `Set`: 不包含重复元素的集合,不保证元素顺序。HashSet是最常用的实现,而TreeSet则按照元素的自然排序或自定义...

    Java Map 集合类简介

    在Java的`java.util`包中,集合类扮演着重要的角色,其中List和Map是最为常见的两种。List的实现例如ArrayList和Vector,它们都是可变大小的列表,适合存储和操作各种类型对象的序列。特别是ArrayList,基于动态数组...

    java集合框架图

    在Java集合框架中,主要有六种核心接口:`Collection`, `Set`, `List`, `Queue`, `Deque`, 和 `Map`。此外,还有五个抽象类以及多个实现类,它们共同构成了Java集合框架的基础。 #### 二、核心接口介绍 1. **`...

    Java中的集合学习总结

    `java.util.Collection`接口是Java集合框架的基础,它是所有Set和List集合类型的根接口。该接口定义了一系列基本的操作方法,如添加(add)、删除(remove)、获取元素数量(size)等。这些方法为实现集合框架提供了统一的...

    java集合小结

    ### Java集合小结 #### 一、集合的概念与重要性 集合是Java编程语言中用于存储、管理和操作数据的一种重要工具。它提供了多种数据结构来适应不同的应用场景,从而有效地提高程序开发效率。从数据结构的角度来看,...

    Java的集合框架和StreamAPI

    例如,在一个购物网站中,需要对用户的订单进行处理,可以使用 Java 集合框架的 List 集合来存储订单信息,然后使用 Stream API 的 filter 方法来过滤订单,最后使用 collect 方法将订单收集到一个新的 List 中。...

    JAVA集合试题库.pdf

    - `void clear()`:清空集合中的所有元素。 - `boolean remove(Object obj)`:从集合中移除指定的元素。 - `boolean removeAll(Collection c)`:从集合中移除另一个集合的所有元素。 - **判断操作:** - `...

    JAVA集合详解

    ### JAVA集合详解 #### 一、集合框架概述 ##### 1. 什么是JAVA集合框架? JAVA集合框架(Java Collection Framework)是一种为表示和操作集合所规定的标准体系结构,旨在为开发人员提供一种灵活且高效的机制来...

    JavaList.rar_javalist

    `List`接口还有许多其他方法,如`set(int index, E element)`用于替换元素,`clear()`用于清空列表,`subList(int fromIndex, int toIndex)`用于获取子列表等。理解并熟练运用这些方法,将使你在处理有序集合时更加...

Global site tag (gtag.js) - Google Analytics