Set接口 一、Set<E>接口的定义 Set<E>接口的定义:public interface Set<E>extends Collection<E>
二、Set<E>接口的操作方法 没有对Collection<E>进行扩展,全部方法都是继承的Collection<E>接口的
三、Set<E>接口的子接口 Set<E>接口的直接子接口:SortedSet<E> 其定义:public interface SortedSet<E>extends Set<E>
Set<E>接口的间接子接口:NavigableSet<E> 其定义:public interface NavigableSet<E>extends SortedSet<E>
四、Set<E>接口的子类 Set<E>接口的子类:AbstractSet<E>、HashSet<E> AbstractSet<E>类的定义:public abstract class AbstractSet<E>extends AbstractCollection<E>implements Set<E> 其中AbstractCollection<E>类的定义:public abstract class AbstractCollection<E>extends Object implements Collection<E> HashSet<E>类的定义:public class HashSet<E>extends AbstractSet<E>implements Set<E>, Cloneable, Serializable
五、AbstractSet<E>类 1、AbstractSet<E>类是一个抽象类,没有实现Set接口的所有方法,但是其具体子类就必须实现Set接口其他未实现的方法
2、构造方法:protected AbstractSet()
3、操作方法(3个):全是Collection<E>接口的 1、boolean equals(Object o) 2、int hashCode() 3、boolean removeAll(Collection<?> c)
4、AbstractSet<E>类的子类特点 HashSet<E>类在继承类AbstractSet<E>类的同时,又显示实现了Set<E>接口,同AbstractList处解释相同
六、HashSet<E>类 1、HashSet<E>类的定义 public class HashSet<E>extends AbstractSet<E>implements Set<E>, Cloneable, Serializable
2、HashSet<E>类的操作方法 1、boolean add(E e) 2、void clear() 3、Object clone() 覆写了Object类的clone()方法 4、boolean contains(Object o) 5、boolean isEmpty() 6、Iterator<E> iterator() 7、boolean remove(Object o) 8、int size()
七、TreeSet<E>类 1、TreeSet<E>类的定义 public class TreeSet<E>extends AbstractSet<E>implements NavigableSet<E>, Cloneable, Serializable
2、TreeSet<E>类的操作方法以Set<E>的为准,其他方法参考文档
|
Queue接口 一、Queue接口的定义 public interface Queue<E>extends Collection<E>
二、Queue接口的操作方法 1、public boolean add(E e) 2、public E element() 3、public boolean offer(E e) 4、public E peek() 5、public E poll() 6、public E remove() 这些方法的区别: Throws exception Returns special value Insert add(e) offer(e) Remove remove() poll() Examine element() peek()
|
List接口和Set接口的区别、HashSet类和TreeSet类的区别 Set接口也是Collection的子接口,与List接口最大的不同在于,Set接口里面的内容是不允许重复的。
HashSet集合的元素是无序存放的,TreeSet集合的元素是有序存放的。
关于排序的说明:如果TreeSet集合的元素类型本身没有实现Comparable接口(CompareTo方法),则会报无法向Comparable类型转换的异常,因为要加入TreeSet集合的元素类型必须实现Comparable接口;
关于重复值的说明:由于TreeSet集合的元素类型实现Comparable接口,所以借用其CompareTo方法可以简单判断其重复值,但是要完全保证TreeSet集合中无重复值,需要在定义加入TreeSet集合的元素类型的时候覆写Object类中的equals()方法和hashCode()方法。 加入HashSet集合的元素类型必须覆写Object类中的equals()方法和hashCode()方法来保证其无重复值,否则无法去除重复值问题。
|
|
发表评论
-
new Date(new Date().toString())结果与new Date()结果不一样的原因
2010-03-12 14:09 2564Date now=new Date(); System.out ... -
String与StringBuffer的比较2
2009-04-12 23:16 907No. -
String与StringBuffer的比较2
2009-04-12 23:10 788No. -
String与StringBuffer的比较1
2009-04-12 23:09 1004String类对象数组可直接调用java.util.Array ... -
JavaSE应用程序类集部分详解6
2009-04-12 22:42 703Properties类 一、Properti ... -
JavaSE应用程序类集部分详解5
2009-04-12 22:41 795Map接口 Map接口中 ... -
JavaSE应用程序类集部分详解4
2009-04-12 22:40 687Collection集合的输 ... -
JavaSE应用程序类集部分详解2
2009-04-12 22:37 561五、ArrayList<E>类 1、ArrayL ... -
JavaSE应用程序类集部分详解1
2009-04-12 22:35 824类集设置的目的 类集设置的目的是为处理对象的 ... -
JavaSE类集框架的完整结构2
2009-04-12 22:32 814三、Map<K,V>接口 Map<K,V& ... -
JavaSE类集框架的完整结构1
2009-04-12 22:31 991类集框架的完整结构 类集框架是用来处理动态的对象数组的。 ... -
JavaSE基础知识方法定义使用部分
2009-04-12 22:25 9851.2.6 Java中的方法 方法在程序中就是一段可重复调 ... -
JavaSE基础知识数组部分
2009-04-12 22:23 7791.2.5 Java中的数组 JAVA中的数组概念仍然用于 ... -
JavaSE基础知识循环结构部分
2009-04-12 22:22 7301.2.4.2 循环结构 1、循 ... -
JavaSE基础知识分支结构
2009-04-12 22:20 6491.2.4 Java流程控制语句结构 JAVA继续沿用用之 ... -
JavaSE基础知识关键字部分
2009-04-12 22:19 7491.2.3 Java关键字 几个关键字需 ... -
JavaSE基础知识部分
2009-04-12 22:17 8161.2 JavaSE基础知识部分 1.2.1 数据类型 ... -
JDK的安装及环境变量的设置
2009-04-12 22:10 878JDK的安装之前也需要先禁用防火墙; JDK的安装要注意其安 ... -
Java简介
2009-04-12 21:59 601Sun公司最初想把程序植入到各种设备中,来实现一些功能,但此项 ... -
JavaSE重点知识点总结
2009-04-12 21:58 2210第一部分:Java基础程序设计 基础部分包括数据类型、运算符 ...
相关推荐
Java语言具有面向对象、与平台无关、简单稳定...起点,每个章节循序渐进地向读者介绍了Java相关核心知识,并设计任务驱动环节,使读者在读程序、学知识、写程序的过程中,逐渐掌握面向对象的Java程 序设计思想和技能。
JavaSE笔试程序题涵盖了许多核心Java编程概念,包括设计模式、数据结构、算法、多线程、I/O操作以及字符串处理等。以下是这些题目中涉及的知识点详解: 1. **Singleton模式**:确保一个类只有一个实例,常用于配置...
JavaSE(Java Standard Edition)是Java编程语言的核心部分,它为构建桌面应用程序、网络应用程序以及分布式系统提供了基础。李兴华的"JavaSE开发详解笔记"深入浅出地讲解了这个重要领域的诸多知识点,旨在帮助...
- **JavaSE(Standard Edition)**:标准版,适用于桌面应用程序的开发。虽然目前企业级应用更多倾向于Web端,但JavaSE仍然是学习Java的基础。 - **JavaEE(Enterprise Edition)**:企业版,专为构建大型企业级...
### JavaSE之StringBuilder类与String类 #### 一、String类概述 在Java语言中,`String`类是非常重要的一个类,它代表了不可变的字符序列,即一旦创建了一个`String`对象,其内容就不能被修改。由于`String`类的不...
Java Standard Edition(简称Java SE)是Java平台的核心部分,用于开发和运行桌面应用程序、服务器应用程序以及分布式计算系统。这套由张龙老师提供的Java SE课程代码,包含了从基础到进阶的全方位学习材料,涵盖了...
JavaSE(Java Standard Edition)是Java平台的基础,主要用于桌面应用和控制台程序开发。本项目是一个基于JavaSE实现的家庭收支记账软件,旨在帮助用户轻松管理日常生活中的财务状况。对于Java初学者来说,这是一个...
JavaSE是Java的核心部分,提供了丰富的类库和API,用于创建桌面应用程序。在这个系统中,JavaSE的特性如面向对象编程、异常处理、多线程等被广泛应用。通过JavaSE的Swing或JavaFX库,可以创建用户友好的图形用户界面...
JavaSE6的脚本引擎功能极大地增强了Java应用程序的灵活性和可扩展性。通过JSR223规范提供的API,开发者可以方便地在Java应用中集成多种脚本语言,提高开发效率。此外,通过不同的获取脚本引擎的方式,可以更灵活地...
《基于JavaSE实现的简单购物系统详解》 JavaSE(Java Standard Edition)是Java平台的基础版本,主要用于桌面应用开发。本篇文章将详细讲解如何利用JavaSE技术构建一个基础的购物系统,适合Java初学者入门实践。 ...
《JavaSE经典实例详解(1-10)》 在Java编程领域,Java Standard Edition (JavaSE) 是基础,它提供了构建桌面应用、服务器端应用和网络应用的平台。本篇将详细介绍JavaSE中的10个经典实例,帮助开发者深入理解和...
Derby是一个轻量级的、完全由Java编写的数据库引擎,这使得它能够轻松地被集成到各种Java应用程序中,无需额外的安装过程。它支持SQL92E标准及部分SQL99的扩展,并具备事务处理、崩溃恢复和并发控制等高级功能。此外...
首先,JavaSE(Java Standard Edition)是Java平台的基础版本,它提供了开发桌面应用程序所需的所有类库和工具。在这个坦克大战游戏中,我们主要利用了JavaSE的图形用户界面(GUI)组件和事件处理机制来构建游戏界面...
JavaSE(Java Standard Edition)作为Java的核心部分,包含了构建桌面应用和其他多种应用程序的基础类库和技术。对于初学者而言,掌握JavaSE的核心概念至关重要。本篇文章将围绕UltraPad工具中的Content类展开,深入...
4. **运行环境**:虽然JavaSE可以用来开发和打包应用程序,但Struts2主要用于JavaEE环境。如果你尝试在JavaSE环境下运行一个使用Struts2的JAR,可能需要额外的服务器支持,如Tomcat或Jetty。 通过理解这两种方法,...
MVC是一种广泛应用于软件开发的架构模式,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。模型负责处理数据逻辑,视图显示数据,控制器则作为模型和视图之间的桥梁,处理用户...
### JavaSE复习提纲知识点详解 #### 一、Java基础语法及特点 **Java的特点:** - **跨平台性:** Java的最大特点是其跨平台能力,即“一次编写,到处运行”(Write Once, Run Anywhere),这得益于Java虚拟机(JVM)的...