`
Hello______world
  • 浏览: 17533 次
社区版块
存档分类
最新评论

[javaSE] 集合框架(ArrayList,LinkedList,Vector)

    博客分类:
  • java
 
阅读更多
ArrayList特点:底层使用数组数据结构,查询速度快(使用脚标查),插入删除慢(索引需要改变)

LinkedList特点:底层使用链表数据结构,查询慢(需要一个一个去问),插入删除快

Vector特点:底层数组数据结构,线程同步,被ArrayList代替了。

ArrayList

package test;

import java.util.ArrayList;

public class ArrayListDemo {

	public static void main(String[] args) {
      ArrayList lists = new ArrayList();
      lists.add("test01");
      lists.add("test01");
      lists.add("test02");
      lists.add("test02");
      
      lists = getSingleArray(lists);
      System.out.println(lists);
	}

	private static ArrayList getSingleArray(ArrayList lists) {
		ArrayList res = new ArrayList();
		for(Object obj: lists){
			if(!res.contains(obj)){
				res.add(obj);
			}
		}
		return res;
	}

}



LinkedList特有的功能与first,last有关,例如 addFirst(),getFirst(),removeFirst()

package test;

import java.util.LinkedList;

public class LinkedListDemo {

	public static void main(String[] args) {
        LinkedList links = new LinkedList();
        links.add("link01");
        links.add("link02");
        links.add("link03");
        
        while(!links.isEmpty()){
        	System.out.println(links.pollFirst());
        }
	}
}




Vector特有的功能与element有关的,枚举

package test;

import java.util.Enumeration;
import java.util.Vector;

public class VectorDemo {

	public static void main(String[] args) {
        Vector v = new Vector();
        v.add("vector1");
        v.add("vector2");
        v.add("vector3");
        Enumeration e = v.elements();
        while(e.hasMoreElements()){
        	System.out.println(e.nextElement());
        }
	}
}

分享到:
评论

相关推荐

    9、JavaSE:集合框架.pdf

    Java集合框架是JavaSE标准库中的一个重要组成部分,它为Java程序员提供了一系列接口和类来管理对象集合。集合框架的设计使得程序员在处理数据集合时可以更加高效和方便,无论是在空间的利用还是数据的存取方面。 ...

    javase集合 温故而知新.doc

    List接口的实现类有ArrayList、LinkedList、Vector等。ArrayList是使用数组实现的List,查找速度快,但删除添加元素慢。LinkedList是使用链表实现的List,查找速度慢,但删除添加元素速度快。Vector是ArrayList的...

    Java中的ArrayList的底层源码解读、LinkedList、Vector的区别介绍

    适用人群:JavaSE初学者,对源码感兴趣的,想要深度了解ArrayList底层实现、数据结构、add方法、Remove方法、以及自动扩容机制的同学,并且对ArrayList已经有过使用,想要学习它与LinkedList,Vector等的区别,该...

    JavaSE基础入门视频教程33天之(19) part2

    最后,"day19_08(集合框架)Vector类的特点.avi"和"day19_09(集合框架)Set接口的特点.avi"分别介绍了Vector和Set接口的特点。Vector类与ArrayList类似,但它是线程安全的,适合多线程环境。而Set接口,如其名,强调的...

    最全的Java面试题、读书笔记、面试经验

    * [Java集合框架](Part2/JavaSE/Java集合框架.md) * [ArrayList源码剖析](Part2/JavaSE/ArrayList源码剖析.md) * [LinkedList源码剖析](Part2/JavaSE/LinkedList源码剖析.md) * [Vector源码剖析](Part2/JavaSE/...

    JavaSE专题-List集合.doc

    常见的实现类有ArrayList、LinkedList、Vector和Stack。ArrayList基于动态数组实现,适合随机访问,但插入和删除效率较低;LinkedList通过链表实现,插入和删除效率高,但随机访问较慢。 5. **ArrayList集合** - ...

    JavaSE_集合.pdf

    ### JavaSE_集合.pdf 关键知识点详解 #### 一、集合与数组的区别 - **固定与动态**: 数组的长度是...以上是关于JavaSE集合框架的核心知识点,这些知识点对于理解Java集合框架的工作原理和高效使用集合类至关重要。

    JAVA SE 开发手册.CHM

    14、JAVA集合框架之list接口、LinkedList类、ArrayList类、Vector类 15、JAVA集合框架之Set接口、HashSet类、TreeSet类 16、JAVA集合框架之Map接口、HashMap类、Trelap类、Hashtable类 17、JAVA异常Exception 18...

    javase知识的回顾

    7. **Enumeration接口**:较旧的迭代接口,主要用于早期的集合类,如Vector和Hashtable。 8. **SortedSet和SortedMap接口**:提供了排序功能,它们的实现如TreeSet和TreeMap,根据元素的自然顺序或者自定义的...

    JavaSE笔试问答题.docx

    4. `ArrayList`、`Vector`和`LinkedList`都是Java集合框架中的列表实现。`ArrayList`基于动态数组,适合随机访问但插入和删除较慢;`Vector`类似`ArrayList`但线程安全;`LinkedList`使用双向链表,插入和删除速度快...

    JavaSE知识点归纳总结.pdf

    Collection是最基本的接口,List(如ArrayList、LinkedList和Vector)和Set(如HashSet、LinkedHashSet和TreeSet)都是它的子接口。List接口保持元素的有序性,允许重复元素;Set接口不保证元素顺序,不允许重复元素...

    ArrayList.docx

    `ArrayList`是Java中最常见的集合框架之一,它属于`java.util`包的一部分。`ArrayList`底层由数组实现,支持元素重复,并保持插入顺序,即有序性。对于增删操作,由于涉及到数组元素的移动,其效率相对较低;而查找...

    javaSE高级知识总结加实战样例.docx

    在Java编程语言中,集合框架是处理对象的重要组成部分,提供了高效的数据存储和操作机制。本文将深入探讨Java SE中的高级集合知识,包括其接口、实现类、操作方法以及泛型的使用。 首先,集合(Collections)是Java...

    javaSE 基础知识

    Vector是Java中的一个古老集合类,它是ArrayList的线程安全版本。这意味着在多线程环境下,对Vector的操作不会引发数据不一致的问题。Vector的主要方法如下: - `indexOf(Object)`: 在Vector中查找指定对象的索引...

    java8源码-JavaRobot:Java学习笔记,JavaLearningNote

    JavaSE(Java基础) Java Core 关键字 synchronized关键字 Java String Java Arrays Java Collections Java 泛型 Java NIO Buffer Channel Selector Java 8 Features 源码解读 String源码系列 List源码系列 ArrayList ...

    JavaSE.docx

    **ArrayList、LinkedList、Vector**:这三种都是List接口的实现,分别有不同的性能特点,适用于不同场景。 - ArrayList基于动态数组,随机访问快速,插入和删除慢。 - LinkedList基于链表,插入和删除快,但随机...

    javaSE编程常见细节问题

    主要包括 `ArrayList`、`Vector` 和 `LinkedList` 等。其中: - **ArrayList**:基于数组实现,提供随机访问元素的高效性能。 - **Vector**:与 `ArrayList` 类似,但线程安全。 - **LinkedList**:基于双向链表...

Global site tag (gtag.js) - Google Analytics