最近开始复习以前学的集合框架,在网上看了看,教程还是以前那个版本,虽然很详细,但内容太繁杂,不易于阅读,对于初学者来说,学习起来也更为吃力,因此,今天写了这篇教程,以供初学者学习参考(绝对原版),读后有成者,谢谢回帖支持,我将陆续推出此类易学版的Java教程!
JCF(Java Collection FrameWork)--Java集合框架。
JCF是我们学习Java开始接触的第一个框架。首先,Why....,为什么我们要学习这一框架,然后是What..,它是什么,最后是How...,我们怎么去用它,围绕这3点我们开始今天JCF的学习。
1.Why
大家在学习Java应该已经学习了数组,它是具有相同类型的索引集合,不知大家在学习数组是有没有发现一个问题,就是他的空间固定性,只要它的内存空间一旦定义下来就不可改变,这样以来,给我们在实际的操作中带来了很大的不便,甚至是一些简单的需求,一旦使用数组,麻烦就会接踵而来,为了解决数组空间固定性所带来的麻烦,我们引用了JCF,他的到来,使许多问题迎刃而解,以前数组再困难的操作,在JCF面前就会变得异常简单。
2.What
JCF顾名思义就是Java的集合框架,他实现了用一个对象对多个对象的操作,他由许多的类和接口组成,通过使用它所提供的类和接口,可以大量减少我们的工作量,提高性能等等好处,集合框架可以大致分为三成三块;以下是集合框架的基本结构图,大家在学习集合框架和必须做到心中由此图:
3.How(进入此阶段者务必先弄清楚上图各接口各类的关系,如不知哪些是接口哪些是实现类可参考JDK文档)
在学习集合框架时,大家不用把每个类每个接口的方法都拿来记,只需要把公共的记住,再记一些类特有的方法就行了。
我们分为三大类来学,一个是Collection接口,一个是Map接口,一个是集合的辅助类。
- Collection接口,由List接口和Set接口继承于他,首先来看Collection接口的公共方法:
--添加、删除
boolean add(Object object);
boolean remove(Object object);
--查询
int size() 集合长度
boolean isEmpty(); 是否为空
boolean contrans(); 是否存在
对于一组操作
boolean addAll(collection c);
boolean removeAllection c);
boolean contransAllection c);
它的两个子接口特有方法:
List接口: get()、set();
此接口实现类:ArraytList-----最适合查询,广泛使用;
Vector--------和ArrayList相似,但是是线程安全的(被synchronized修饰);
LinkedList-------由于其内存空间是不连续的,为链表方式,因此它适合增删该操作;
这些实现类的方法大家不用再记,只需记住List接口和Collection接口的方法就行了!
集合类教程详解一(易学版)就到这里,大家其实不用忙着进入教程二,可以先记一记JCF结构图和练习一下Collection接口这一块的操作!然后泡一杯咖啡,打开魔兽玩一把!
分享到:
相关推荐
易语言是一种以“易”为理念,以直观、易学、易用为目标的中文编程语言。它由王垠博士在2000年创立,旨在降低编程门槛,让更多的人能够参与到计算机程序设计中来。易语言教程大集合是针对这种编程语言的学习资料合集...
### MATLAB Simulink建模仿真实例详解 #### 一、动态系统的计算机仿真 **1.1 系统与模型** - **系统定义**: 系统指的是由若干个相互关联、相互作用的元素组成的集合体,这些元素共同实现特定的功能。这里的“系统...
Simulink建模仿真实例详解 Simulink 是一种强大的计算机仿真工具,广泛应用于动态系统的仿真和建模。它是 MATLAB 的一个附加组件,可以实现各种动态系统的建模、分析和仿真。在本文中,我们将详细介绍 Simulink 的...
1. **基础语法**:Python的基础语法是其易学性的关键,包括变量定义、数据类型(如整型、浮点型、字符串、布尔型、列表、元组、字典和集合)、流程控制(如条件语句和循环语句)、函数定义以及模块导入等。...
总的来说,这个程序集合是一个全面的Python入门教程,覆盖了从基本语法到进阶特性的多个方面,通过实践这些例子,初学者不仅可以熟悉Python语言,还能了解其在不同领域的应用。对于想要深入Python世界的人来说,这是...
6. **数组与集合**:讲解如何声明和使用一维和多维数组,以及VB中的集合类,如FormCollection、ControlCollection等。 7. **面向对象编程**:深入理解对象、类、属性、方法和事件的概念,以及如何自定义控件和类。 ...
列表是一种有序且可变的数据结构,字典是一种无序且可变的键值对集合,集合是一种无序且唯一元素的集合,元组是一种有序且不可变的数据结构。 5. Python函数与类:在Python中,函数是第一类对象,可以被分配给变量...
本指南旨在为初学者和有经验的开发者提供一个清晰、简洁的Ant使用教程,帮助你们更好地理解和应用Ant。 1. **Ant的基本概念** - **构建文件**:Ant的核心是`build.xml`,这是一个XML格式的文件,包含了构建过程的...
**VB新手教程源代码详解** 本教程集合了29个VB(Visual Basic)源码示例,旨在帮助初学者快速入门并掌握VB编程基础。VB是Microsoft开发的一种面向对象的编程语言,它以其简单易学、强大的功能和丰富的控件库而广受...
- **实用性与易学性**:读者们普遍认为,《Python的一小步》不仅内容实用,而且非常易于理解和学习,即便是没有任何编程背景的新手也能轻松上手。 - **感谢之情**:许多读者通过电子邮件表达了自己的感激之情,他们...
### Visual Basic语言教程详解与案例分析 #### 一、Visual Basic简介 Visual Basic(简称VB)是一种基于事件驱动的编程语言,它属于Microsoft Visual Studio集成开发环境(IDE)的一部分。VB语言主要应用于Windows...
- **程序**:指的是一系列有序指令的集合,这些指令指导计算机执行特定任务。 ##### 1.2 程序设计的目标 程序设计不仅仅是为了编写代码,更重要的是解决实际问题。它包括需求分析、算法设计、编码实现、测试调试等...
**VB.NET教程详解** VB.NET,全称Visual Basic .NET,是Microsoft公司开发的一种面向对象的编程语言,它是.NET框架的重要组成部分。VB.NET在继承了传统Visual Basic易学易用的特点的同时,融入了现代编程语言的强大...
### Swift 基础教程知识点详解 #### 1. 介绍 ##### 1.1 Swift 是什么 Swift 是一种高效、安全且易于学习的编程语言,由苹果公司于2014年推出,并逐渐开放为开源项目。Swift 被设计用于替代 Objective-C,它在吸收了...
### Java教程帮助知识点详解 #### 一、Java语言概述 - **Java的起源与发展** - Java最初由Sun Microsystems的James Gosling团队于1990年代初开发,当时命名为Oak,目标是创建一个适用于家电设备的编程语言。 - ...
JavaScript教程详解 JavaScript,简称JS,是一种广泛应用于Web开发的轻量级编程语言,它主要在客户端运行,赋予网页动态功能。本教程将深入探讨JavaScript的核心概念、语法、以及其在现代Web开发中的应用。 一、...
### Ruby入门教程知识点详解 #### 一、Ruby语言概述 **1.1 Ruby的历史** Ruby是一种面向对象的脚本语言,由日本人松本行弘(Matz)于1995年开始开发。Ruby的设计理念是“使编程人员快乐”,因此它具有简洁、直观...