dxhashmap.java

来自「用Java写的面相对象的数据库管理系统」· Java 代码 · 共 121 行

JAVA
121
字号
// You can redistribute this software and/or modify it under the terms of// the Ozone Library License version 1 published by ozone-db.org.//// The original code and portions created by SMB are// Copyright (C) 1997-2000 by SMB GmbH. All rights reserved.//// $Id: DxHashMap.java,v 1.10 2000/11/03 13:56:43 daniela Exp $package org.ozoneDB.DxLib;import java.util.Hashtable;import java.io.Externalizable;/** * A DxMap implementation based on java.util.Hashtable. *  * @author <a href="http://www.softwarebuero.de/">SMB</a> * @version $Revision: 1.10 $Date: 2000/11/03 13:56:43 $ *  *  * @author <a href="http://www.softwarebuero.de/">SMB</a> * @version $Revision: 1.10 $Date: 2000/11/03 13:56:43 $ */public class DxHashMap extends DxAbstractMap implements DxHashCollection {        final static long serialVersionUID = 1L;        protected transient Hashtable ht;            public DxHashMap() {        ht = new Hashtable();    }            public DxHashMap( int size ) {        ht = new Hashtable( size );    }            public Object clone() {        DxMap newMap = new DxHashMap( Math.max( count(), 8 ) );        return clone( newMap );    }             public boolean addForKey( Object obj, Object key ) {        synchronized (ht) {            Object old = ht.put( key, obj );            if (old != null) {                ht.put( key, old );                return false;            }             return true;        }    }             public Object elementForKey( Object key ) {        return ht.get( key );    }             public Object keyForElement( Object obj ) {        DxIterator it = iterator();        Object cursor;        while ((cursor = it.next()) != null) {            if (obj.equals( cursor )) {                return it.key();            }         }         return null;    }             public Object removeForKey( Object key ) {        return ht.remove( key );    }             public synchronized boolean remove( Object obj ) {        Object key = keyForElement( obj );        if (key != null) {            removeForKey( key );            return true;        }         return false;    }             public int count() {        return ht.size();    }             public boolean isEmpty() {        return ht.isEmpty();    }             public boolean containsKey( Object key ) {        return ht.containsKey( key );    }             public DxIterator iterator() {        return new DxHashIterator( this );    }             public void clear() {        ht.clear();    }             public Hashtable internalHashtable() {        return ht;    } }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?