java学习[2]_数据结构
来源:互联网 发布:淘宝店铺装修托管 编辑:程序博客网 时间:2024/06/06 08:24
数据结构
简要介绍一些java中的数据结构。
Java工具包提供了强大的数据结构,在Java中的数据结构主要包括以下七种接口和类。
java数据结构介绍:
1、Enumeration接口:枚举(The Enumeration)接口定义了一种从数据结构中取回连续元素的方式。其中包括了nextElement()方法:用来得到一个包含多元素的数据结构的下一个元素;hasmoreElements()方法:测试此枚举是否包含更多的元素,返回布尔值。
2、Vector类:Vector类实现了一个动态数组,Vector主要用在事先不知道数组的大小,或者只是需要一个可以改变大小的数组的情况。
3、Bitset类:一个Bitset类创建一种特殊类型的数组来保存位值,同时,BitSet中数组大小会随需要增加。
4、Stack类:栈是Vector的一个子类,实现了一个标准的后进先出的栈。
5、Dictionary类:Dictionary 类是一个抽象类,用来存储键/值对,Python中也有字典。
6、Hashtable接口:Hashtable是原始的java.util的一部分, 是一个Dictionary具体的实现,因此Hashtable在哈希表中也是存储键/值对。
7、Properties接口:Properties 继承于 Hashtable.表示一个持久的属性集.属性列表中每个键及其对应值都是一个字符串。程序及结果
代码1:测试枚举类型,打印元素,使用了nextElement()和hasMoreElements()方法:
package DataStructure;import java.util.Enumeration;import java.util.Vector;public class TestEnumeration { public static void main(String[] args) { // TODO Auto-generated method stub //打印枚举所有元素 Enumeration numbers; Vector number = new Vector(); for(int i=0;i<10;i++){ number.add(i); } numbers = number.elements(); do{ //打印当前位置下一个元素使用nextElement()方法 System.out.print(numbers.nextElement()); }while(numbers.hasMoreElements());//测试此枚举是否含有更多的元素,返回布尔值 }}
代码2:测试BitSet类型,测试与、或集合操作:
package DataStructure;import java.util.BitSet;public class TestBitSet { public static void main(String[] args) { // TODO Auto-generated method stub BitSet BS1 = new BitSet(20); BitSet BS2 = new BitSet(20); //创建BitSet for(int i=0;i<20;i++){ if(i%2==0){ BS1.set(i); } if(!(i%3==0)){ BS2.set(i); } } //打印BitSet System.out.println("BS1: " + BS1); System.out.println("BS2: " + BS2); //集合之间的与操作 AND BS2.and(BS1); System.out.println("两集合的与操作:"+BS2); //集合之间的或操作 OR BS2.or(BS1); System.out.println("两集合的或操作:"+BS2); }}
0 0
- java学习[2]_数据结构
- 数据结构学习_树(2)
- 数据结构概念_学习笔记2
- java数据结构_附2_Strategy(…
- Java数据结构_栈
- Java 数据结构_树
- 数据结构_学习之_ 线性表
- java学习_集合(2)
- 01-数据结构_学习大纲
- H264学习_基本数据结构
- H264学习_基本数据结构
- java数据结构_笔记(4)_图
- Java数据结构_散列
- Java 数据结构_线性表
- 数据结构_复习2
- php语言_数据结构_树_学习笔记
- Java学习(2)_选择,循环,方法
- 数据结构与算法分析_学习笔记
- 易语言透视
- 7 eclipse安装proovy插件
- express框架layer.js源码解析
- [随想]对话里的三种爱
- 【Leetcode】234. Palindrome Linked List
- java学习[2]_数据结构
- CSS控制布局的属性display、 column属性创建多列
- CentOS 下安装MySQL
- 八皇后问题
- sso以及cas
- 接口测试实践
- Vue入门01-vue初识
- 软件测试理论题目解疑(一)
- MySQL数据库——插入记录的基本操作