数据结构
简要介绍一些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);
}
}