Java - 数据结构

Java工具包提供了强大的数据结构。在Java中的数据结构主要包括以下几种接口和类:

枚举(Enumeration)

位集合(BitSet)

向量(Vector)

栈(Stack)

字典(Dictionary)

哈希表(Hashtable)

属性(Properties)

以上这些类是传统遗留的,在Java2中引入了一种新的框架-集合框架(Collection),我们后面再讨论。

枚举(Enumeration)

枚举(Enumeration)接口虽然它本身不属于数据结构,但它在其他数据结构的范畴里应用很广。 枚举(The Enumeration)接口定义了一种从数据结构中取回连续元素的方式。

例如,枚举定义了一个叫nextElement 的方法,该方法用来得到一个包含多元素的数据结构的下一个元素。

位集合(BitSet)

位集合类实现了一组可以单独设置和清除的位或标志。

该类在处理一组布尔值的时候非常有用,你只需要给每个值赋值一”位“,然后对位进行适当的设置或清除,就可以对布尔值进行操作了。

向量(Vector):

向量(Vector)类和传统数组非常相似,但是Vector的大小能根据需要动态的变化。

和数组一样,Vector对象的元素也能通过索引访问。

使用Vector类最主要的好处就是在创建对象的时候不必给对象指定大小,它的大小会根据需要动态的变化。

关于该类的更多信息,请参见向量(Vector)。

栈(Stack):

栈(Stack)实现了一个后进先出(LIFO)的数据结构。

你可以把栈理解为对象的垂直分布的栈,当你添加一个新元素时,就将新元素放在其他元素的顶部。

当你从栈中取元素的时候,就从栈顶取一个元素。换句话说,最后进栈的元素最先被取出。

关于该类的更多信息,请参见栈(The Stack)。

字典(Dictionary):

字典(Dictionary)类是一个抽象类,它定义了键映射到值的数据结构。

当你想要通过特定的键而不是整数索引来访问数据的时候,这时候应该使用Dictionary。

由于Dictionary类是抽象类,所以它只提供了键映射到值的数据结构,而没有提供特定的实现。

哈希表(Hashtable)

Hashtable类提供了一种在用户定义键结构的基础上来组织数据的手段。

例如,在地址列表的哈希表中,你可以根据邮政编码作为键来存储和排序数据,而是通过人的名字。

哈希表键的具体含义完全取决于哈希表的使用情景和它包含的数据。

属性(Properties)

Properties 继承于 Hashtable.Properties 类表示了一个持久的属性集.属性列表中每个键及其对应值都是一个字符串。

Properties 类被许多Java类使用。例如,在获取环境变量时它就作为System.getProperties()方法的返回值。

数据结构c java_Java - 数据结构相关推荐

  1. 数据结构 排序 java_Java数据结构之排序---希尔排序

    希尔排序的基本介绍: 希尔排序同之前的插入排序一样,它也是一种插入排序,只不过它是简单插入排序之后的一个优化的排序算法,希尔排序也被称为缩小增量排序. 希尔排序的基本思想: 希尔排序是把数组中给定的元 ...

  2. 数据结构 排序 java_Java数据结构之排序---选择排序

    简单选择排序的介绍: 从给定的序列中,按照指定的规则选出某一个元素,再根据规定交换位置后达到有序的目的. 简单选择排序的基本思想: 假定我们的数组为int [] arr = new int[n],第一 ...

  3. python数据结构推荐书-关于数据结构,有哪些不错的参考书推荐?

    学习编程,数据结构是你必须要掌握的基础知识,那么数据结构到底是什么呢? 其实数据结构就是用来描述计算机里存储数据的一种数学模型,因为计算机里要存储很多乱七八糟的数据,所以也需要不同的数据结构来描述. ...

  4. 你真的懂redis的数据结构了吗?redis内部数据结构和外部数据结构揭秘

    Redis有哪些数据结构? 字符串String.字典Hash.列表List.集合Set.有序集合SortedSet. 很多人面试时都遇到过这种场景吧? 其实除了上面的几种常见数据结构,还需要加上数据结 ...

  5. 数据结构:线性数据结构(1)-栈(栈,队列,deques, 列表)

    栈,队列,deques, 列表是一类容器,他们数据项之间的顺序由添加或删除的顺序决定,一旦一个数据项被添加,它相对于前后元素一直保持该位置不变.注入此类的数据结构称为线性数据结构. 栈 栈(栈,队列, ...

  6. 【数据结构与算法 - 数据结构基础】什么是数据结构?

    [数据结构与算法 - 数据结构基础]什么是数据结构? 文章目录 [数据结构与算法 - 数据结构基础]什么是数据结构? 1 数据结构包含的三个方面 1.1 数据的逻辑结构 1.1.1 线性结构 数组[A ...

  7. 数据结构系列-初识数据结构

    介绍 数据结构的基本信息 数据:是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称.如:字符串,实数整数.... 数据元素:是数据的基本单位,在计算机中通常被作为一个整体进行考 ...

  8. python数据结构算法_数据结构与算法(Python)

    数据结构与算法(Python) Why? 我们举一个可能不太恰当的例子: 如果将最终写好运行的程序比作战场,我们码农便是指挥作战的将军,而我们所写的代码便是士兵和武器. 那么数据结构和算法是什么?答曰 ...

  9. 数据结构和非数据结构详解

    在提到数据结构和非数据结构时,好多人都有这样的意识,概念可能说不上来,接下来就来说说结构化数据和非结构化数据的概念以及不同: 结构化数据.非结构化数据是对存储形式的一种数据类型分析,有助于企业细分行业 ...

最新文章

  1. 关于Tomcat有这一篇就够了
  2. 算法竞赛入门与进阶 (二)单调队列、单调栈
  3. 聚类算法小记(part2)--谱聚类
  4. Python元组练习
  5. ionic3 cordova ionic-native插件
  6. python中变量和函数的区别_python中带下划线的变量和函数的意义
  7. python是一种面相什么语言_Python面相对象编程的知识总结
  8. 将一个list转化成一颗树的输出方法
  9. MySQL 常用命令大全
  10. linux命令--vi,vim
  11. Latex写分段函数
  12. 特殊权限 set_uid、set_gid、stick_bit,软链接文件,硬链接文件
  13. Python数据分析(二):DataFrame基本操作
  14. 2021/9/7 ad9361 SPI 通信与数据接口
  15. PCWorld:IT界14对经典“生死冤家”
  16. 求点到直线距离,可以分辨点在直线左边还是右边
  17. Github和Git是啥意思?下面来简单了解下。
  18. Android播放音乐的代码,android源代码(完整的音乐播放器)
  19. HTML5 video autoplay=autoplay 无法自动播放的问题
  20. SVG 图标制作指南

热门文章

  1. 如何做好部门以及公司的文档管理、知识管理以及情报管理?——By Me
  2. springboot注释详解
  3. -[ASIDataCompressor compressBytes:length:error:shouldFinish:] in ASIDataCompressor.o
  4. 说说Javascript
  5. 华为手机改定位怎么改变_华为推送HMS服务,依靠鸿蒙OS,或将改变手机行业格局...
  6. JavaScript之DOM对象(Event事件)
  7. 尾气冒黑烟是什么问题_老司机教你从尾气颜色就判断出爱车的“身体状况”
  8. sql 同一张表中两个记录不能共存_如何分析交易记录?
  9. Python绘制雷达图展示学生各科考试成绩
  10. 微课系列(6):Python关键字else的三种用法