`
junzai
  • 浏览: 15191 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论

三种集合框架

阅读更多
java三种集合框架


一、
1、java.util.List:线性,有下标,长度可变,有序的(先进先出),可重复
2、java.util.Set:非线性,无下标,不可重复,无序,长度可变
3、java.util.Map:K是在set中的,所以K不重复,每一个K对应一个V,V是可重复的
二、
三种遍历方法:
1、有下标的可用三种遍历方式,最后一种加强for循环的效率最高,可用系统测试时间的方法来测试
2、没下标的只能用后两种

三、
要明确的一点,我们定义一个方法时要知道它是干什么的,参数是什么,返回值是什么

四、
要实现一个集合只需要:创建集合对象,将元素装入集合,遍历


/**
* 队列测试
* 大小可变数组的实现:线性,有下标,长度可变,有序的(先进先出),可重复
* @author Administrator
*
*/
public class ArrayList {
public static void main(String[] args){
//创建队列对象
java.util.ArrayList<String> list=new java.util.ArrayList<String>();

//获取系统时间
long t1=System.currentTimeMillis();

//装入元素
for(int i=0;i<100000;i++){
String str="元素"+i;
//将元素装入队列,于是队列就有了长度
list.add(str);
}
list.add("元素0");

//遍历1:用for循环
for(int i=0;i<list.size();i++){
//取出元素一次,就输出一次
String str=list.get(i);
System.out.println(str);
}
//遍历完了之后再统计时间
long t2=System.currentTimeMillis();
System.out.println((t2-t1));


//遍历2:通过迭代循环,就相当于用一个中间容器来传送
//调用这个方法,返回一个类型
// java.util.Iterator<String> iter=list.iterator();
// //判断迭代器中是否有元素,用while循环循环次数就可以输出所有的元素,用if只可以得到一个元素
// while(iter.hasNext()){
// //如果有,就取出一个
// String str=iter.next();
// System.out.println(str);
// }

// //遍历3:加强for循环,遍历后面的容器放到前面的容器中.最快,但是时间每次都会变化
// for(String str:list){
// System.out.println(str);
// }


}

}


2、

/**
* 无序列表(集合测试)
* HashSet:非线性,无下标,不可重复,无序,长度可变
* @author Administrator
*
*/
public class HashSetTest {
public static void main(String[] args){

//创建集合对象
java.util.HashSet<String> set=new java.util.HashSet<String>();

//装入元素
for(int i=0;i<100;i++){
String str="元素"+i;
//将元素装入集合中
set.add(str);
}

//为了判断元素0是替换掉原来的还是根本没加进去,结果证明是没加进去,boolean的值只有真假两个
boolean b=set.add("元素0");
System.out.println(b);

//遍历,不能再通过下标遍历了
//遍历1:
// java.util.Iterator< String> iter=set.iterator();
// while(iter.hasNext()){
// String str=iter.next();
// System.out.println(str);//打印出来的结果是无序的
// }

//遍历2:for循环加强
for(String str:set){
System.out.println(str);
}

}

}


3、

/**
* 映射测试
* HashMap:
* K<-->V
* K是在set中的,所以K不重复
* 每一个K对应一个V,V是可重复的,所以就相当于数学中的一个原像可以有多个像,即
* @author Administrator
*
*/
public class HashMap {
public static void main(String[] args){
//创建映射对象
java.util.HashMap<Integer, String> map=new java.util.HashMap<Integer, String>();

//装入映射关系
for(int i=0;i<10;i++){
int num=201108071+i;
String name="学生";
//装入映射,不能用add
map.put(num, name);
}
//添加映射
map.put(2011080712,"张志君");

//遍历不能用这个了:java.util.Iterator<E>,也不能用这个java.util.HashSet<E>,只能用
//得到装有K的Set
java.util.Set<Integer> keys=map.keySet();
for(int num:keys){
//根据K得到对应的V
String name=map.get(num);
System.out.println(num+" "+name);
}

}

}
分享到:
评论

相关推荐

    java集合框架图

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

    Java集合框架使用总结

    它提供了三种视图:键集、值集以及键值映射集,以便以不同的形式查看映射内容。 **2. Map 的常见实现类** - **HashMap**: 基于哈希表的实现,允许使用`null`键和值,但不是线程安全的。 - **TreeMap**: 实现`...

    Java集合框架总结

    ### Java集合框架总结 #### 一、Java集合框架概述 Java集合框架是Java标准库的一部分,它提供了一系列的接口和类来存储和操作各种类型的对象集合。这些接口和类遵循一致的设计模式,使得开发人员可以方便地管理和...

    java集合框架全面进阶.pdf

    6. **fail-fast机制**:这是集合框架中处理并发修改的一种机制。当集合在迭代过程中被修改,并且检测到这种修改时,迭代器会立即抛出ConcurrentModificationException异常,以快速失败的方式阻止继续遍历。这是为了...

    Java集合框架面试题

    "Java集合框架面试题" Java 集合框架是 Java 语言中的一组预定义类和接口的集合,用于存储和操作数据。下面是 Java 集合框架的知识点总结: 1. Java 集合类主要有两大分支:Collection 接口和 Map 接口。...

    Java集合框架常见面试题.pdf

    根据提供的文档内容,文件是关于Java集合框架的面试题知识点总结。以下是Java集合框架的知识点详述: Java集合框架主要包括Collection接口和Map接口两大分支。Collection接口主要包括List、Set以及Queue三个子接口...

    集合框架,java中常用的集合类和接口

    集合框架包含三大块内容:对外的接口、接口的实现和对集合运算的算法。 1. 接口:Collection 顶层接口是集合框架的核心接口,定义了集合的抽象数据类型。 Java 集合框架中常用的接口有: * Collection:顶层接口...

    Java 集合框架深度解析:List、Set 和 Map 的差异与应用

    本文深入探讨了 Java 集合框架中的 List、Set 和 Map 三种集合类型,包括它们的特点、实现以及使用示例。通过对比分析,明确了它们之间的区别和适用场景。希望本文能够帮助你在实际开发中更好地利用 Java 集合框架,...

    java 集合框架

    #### 三、集合框架的基本概念 集合框架的核心概念包括: - **接口**:如`Collection`、`List`、`Set`、`Map`等,它们定义了集合类应具有的基本行为和操作。 - **实现类**:如`ArrayList`、`LinkedList`、`HashSet...

    java集合框架图 (清晰表明集合之间的关系)

    Java 集合框架图解析 Java 集合框架图是一个全新的集合框架,主要由一组用来操作对象的接口组成。不同的接口描述了一组不同数据类型。Java 2 集合框架图集合接口有 6 个,表示不同集合类型,是集合框架的基础。抽象...

    java集合框架之概述

    Java集合框架是Java编程语言中不可或缺的一部分,它提供了一种高效、灵活的方式来组织和操作数据。集合框架(JCF)的引入极大地提升了Java程序员的工作效率,使得数据结构和算法的使用更加标准化和易于理解。 首先...

    Java集合框架常见面试题

    List、Set、Map是Java集合框架中的三种最基本的集合类型,这三种集合类型都有其特点和使用场景。 * List(对付顺序的好帮手):存储的元素是有序的、可重复的。 * Set(注重独一无二的性质):存储的元素是无序的、...

    JAVA学习Java集合框架.pptx

    JAVA集合框架是Java语言中提供的一种数据结构,用于存储和管理大量数据。它提供了多种接口和实现类,例如Collection、List、Map等,帮助开发者更方便地处理数据。 什么是异常? 在Java中,异常是指程序执行过程中...

    Java高级程序设计:第7章-集合框架.pptx

    根据不同类型的集合的特点和用途,集合框架在设计的时候将集合分为以下三种类型: (1) 集合(Set) — 无重复对象 (2) 列表(List) — 允许重复对象,按索引检索,类似 数组 (3) 映射(Map) — 每个元素由key对象和value...

    java集合框架系统剖析

    Java集合框架的核心在于它的接口设计,主要包括以下几种: 1. **`Collection`接口**: - 这是集合框架中最基础的接口之一,用于表示可以容纳多个对象的容器。`Collection`接口提供了一组通用的操作方法,如增加、...

    Java的集合框架和StreamAPI

    它提供了多种集合类型,例如 Set、List、Queue 等,每种集合类型都有其特定的方法和操作。Java 集合框架的核心接口是 Collection 接口,它定义了集合的基本操作,例如添加、删除、contains、isEmpty、size 等。 ...

    详解java集合框架

    ### 详解Java集合框架 #### 一、Java集合框架概览 Java集合框架是一个高度抽象化的数据结构系统,它提供了一系列接口、抽象类以及具体的实现类来帮助开发者管理和操作对象集合。通过理解这些核心概念,我们可以...

    三大框架集合

    【三大框架集合】指的是在Java Web开发中广泛使用的三大核心框架:Struts、Spring和Hibernate的集成应用。这些框架各自负责不同的职责,Struts处理MVC(Model-View-Controller)架构中的控制器部分,Spring提供了...

Global site tag (gtag.js) - Google Analytics