Java数据结构

整理自w3cschool(个人笔记)
1.枚举(Enumeration)

import java.util.Enumeration;
public class EnumerationTester {
   public static void main(String args[]) {
      Enumeration days;
      Vector dayNames = new Vector();
      dayNames.add("Sunday");
      dayNames.add("Monday");
      dayNames.add("Tuesday");
      dayNames.add("Wednesday");
      dayNames.add("Thursday");
      dayNames.add("Friday");
      dayNames.add("Saturday");
      days = dayNames.elements();
      while (days.hasMoreElements()){
         System.out.println(days.nextElement()); 
      }
   }
}

2.bitset   详见:http://blog.csdn.net/lushuaiyin/article/details/7546144

比如有一堆数字,需要存储,source=[3,5,6,9],用int就需要4*4个字节。
java.util.BitSet可以存true/false。
如果用java.util.BitSet,则会少很多,其原理是:
1,先找出数据中最大值maxvalue=9
2,声明一个BitSet bs,它的size是maxvalue+1=10
3,遍历数据source,bs[source[i]]设置成true.
最后的值是:(0为false;1为true),bs [0,0,0,1,0,1,1,0,0,1]
                              3,  5,6,    9
这样一个本来要int型需要占4字节共32位的数字现在只用了1位!比例32:1  

3.向量(Vector)

a.Vector主要用在事先不知道数组的大小,或者只是需要一个可以改变大小的数组的情况。

4.栈(Stack)

栈是Vector的一个子类,它实现了一个标准的后进先出的栈。
堆栈只定义了默认构造函数:Stack()
序号	方法描述
1	boolean empty()             测试堆栈是否为空。
2	Object peek( )              查看堆栈顶部的对象,但不从堆栈中移除它。
3	Object pop( )               移除堆栈顶部的对象,并作为此函数的值返回该对象。
4	Object push(Object element) 把项压入堆栈顶部。
5	int search(Object element)  返回对象在堆栈中的位置,以 1 为基数。

5.字典(Dictionary)

Dictionary类已经过时了。在实际开发中,你可以实现Map接口来获取键/值的存储功能。

6.哈希表(Hashtable)
7.属性(Properties)

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

8.泛型
9.序列化与反序列化 :https://www.w3cschool.cn/java/java-serialization.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值