javahashtable-40

问题描述:java中hashtable怎样存储数据和读取数据? 这篇文章主要介绍了一个有趣的事情,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。

java中hashtable怎样存储数据和读取数据

javahashtable-40的相关图片

Hashtable-哈希表类

以哈希表的形式存储数据,数据的形式是键值对.。

特点:

查找速度快,遍历相对慢

键值不能有空指针和重复数据

创建

Hashtable<Integer,String> ht=new 。

Hashtable<Integer,String>();。

添值

ht.put(1,"Andy");。

ht.put(2,"Bill");。

ht.put(3,"Cindy");。

ht.put(4,"Dell");。

ht.put(5,"Felex");。

ht.put(6,"Edinburg");。

ht.put(7,"Green");。

取值

String str=ht.get(1);。

System.out.println(str);// Andy。

对键进行遍历

Iterator it = ht.keySet().iterator();。

while (it.hasNext()) {。

Integer key = (Integer)it.next();。

System.out.println(key);。

对值进行遍历

Iterator it = ht.values().iterator();。

while (it.hasNext()) {。

String value =(String) it.next();。

System.out.println(value);。

取Hashtable记录数

Hashtable<Integer,String> ht=new Hashtable<Integer,String>();。

ht.put(1,"Andy");。

ht.put(2,"Bill");。

ht.put(3,"Cindy");。

ht.put(4,"Dell");。

ht.put(5,"Felex");。

ht.put(6,"Edinburg");。

ht.put(7,"Green");。

int i=ht.size();// 7。

删除元素

Hashtable<Integer,String> ht=new Hashtable<Integer,String>();。

ht.put(1,"Andy");。

ht.put(2,"Bill");。

ht.put(3,"Cindy");。

ht.put(4,"Dell");。

ht.put(5,"Felex");。

ht.put(6,"Edinburg");。

ht.put(7,"Green");。

ht.remove(1);

ht.remove(2);

ht.remove(3);

ht.remove(4);

System.out.println(ht.size());// 3。

Iterator it = ht.values().iterator();。

while (it.hasNext()) {。

// Get value。

String value =(String) 。

it.next();

System.out.println(value);。

java中的Hashtable怎么用,请详细举例子说明,拜托了 谢谢的相关图片

java中的Hashtable怎么用,请详细举例子说明,拜托了 谢谢

Hashtable-哈希表类\x0d\x0a\x0d\x0a以哈希表的形式存储数据,数据的形式是键值对.\x0d\x0a特点:\x0d\x0a查找速度快,遍历相对慢\x0d\x0a键值不能有空指针和重复数据\x0d\x0a\x0d\x0a创建\x0d\x0aHashtable ht=new \x0d\x0aHashtable();\x0d\x0a\x0d\x0a添值\x0d\x0a\x0d\x0aht.put(1,"Andy");\x0d\x0aht.put(2,"Bill");\x0d\x0aht.put(3,"Cindy");\x0d\x0aht.put(4,"Dell");\x0d\x0aht.put(5,"Felex");\x0d\x0aht.put(6,"Edinburg");\x0d\x0aht.put(7,"Green");\x0d\x0a\x0d\x0a取值\x0d\x0a\x0d\x0aString str=ht.get(1);\x0d\x0aSystem.out.println(str);// Andy\x0d\x0a\x0d\x0a对键进行遍历\x0d\x0a\x0d\x0aIterator it = ht.keySet().iterator();\x0d\x0a\x0d\x0awhile (it.hasNext()) {\x0d\x0a Integer key = (Integer)it.next();\x0d\x0a \x0d\x0aSystem.out.println(key);\x0d\x0a}\x0d\x0a\x0d\x0a对值进行遍历\x0d\x0a\x0d\x0aIterator it = ht.values().iterator();\x0d\x0a\x0d\x0awhile (it.hasNext()) {\x0d\x0a String value =(String) it.next();\x0d\x0a \x0d\x0aSystem.out.println(value);\x0d\x0a}\x0d\x0a\x0d\x0a取Hashtable记录数\x0d\x0a\x0d\x0aHashtable ht=new Hashtable();\x0d\x0a\x0d\x0aht.put(1,"Andy");\x0d\x0aht.put(2,"Bill");\x0d\x0aht.put(3,"Cindy");\x0d\x0aht.put(4,"Dell");\x0d\x0aht.put(5,"Felex");\x0d\x0aht.put(6,"Edinburg");\x0d\x0aht.put(7,"Green");\x0d\x0a\x0d\x0aint i=ht.size();// 7\x0d\x0a\x0d\x0a删除元素\x0d\x0a\x0d\x0aHashtable ht=new Hashtable();\x0d\x0a\x0d\x0aht.put(1,"Andy");\x0d\x0aht.put(2,"Bill");\x0d\x0aht.put(3,"Cindy");\x0d\x0aht.put(4,"Dell");\x0d\x0aht.put(5,"Felex");\x0d\x0aht.put(6,"Edinburg");\x0d\x0aht.put(7,"Green");\x0d\x0a\x0d\x0aht.remove(1);\x0d\x0aht.remove(2);\x0d\x0aht.remove(3);\x0d\x0aht.remove(4);\x0d\x0a\x0d\x0aSystem.out.println(ht.size());// 3\x0d\x0a\x0d\x0aIterator it = ht.values().iterator();\x0d\x0a\x0d\x0awhile (it.hasNext()) {\x0d\x0a // Get value\x0d\x0a String value =(String) \x0d\x0ait.next();\x0d\x0a System.out.println(value);\x0d\x0a}。

java 多线程操作hashtable(添加,删除,遍历)的相关图片

java 多线程操作hashtable(添加,删除,遍历)

就是哈希表,下面这个示例创建了一个数字的哈希表。它将数字的名称用作键: Hashtable<String, Integer> numbers = new Hashtable<String, Integer>();  

 numbers.put("one", 1);  

 numbers.put("two", 2);  

 numbers.put("three", 3); 。

要获取一个数字,可以使用以下代码:

Integer n = numbers.get("two");  

 if (n != null) {  

 System.out.println("two = " + n);  

 }

Java中HashMap和Hashtable分别是干什么用的?就是说他们有什么用途?什么时候用?的相关图片

Java中HashMap和Hashtable分别是干什么用的?就是说他们有什么用途?什么时候用?

public class TestThread {。

public static void main(String[] args){。

Map<Integer, Object> tables = new Hashtable<Integer, Object>();。

Thread add = new Thread(new ThreadAdd(tables));。

Thread del = new Thread(new ThreadDel(tables));。

Thread count = new Thread(new ThreadCount(tables));。

//启动线程

add.start();

del.start();

count.start();。

}

/**

*添加对象线程

*/

private static class ThreadAdd implements Runnable{。

private Map<Integer, Object> table;。

public ThreadAdd(Map<Integer, Object> tables){。

this.table=tables;。

}

public void run() {。

// TODO Auto-generated method stub。

for(int i=0;i<10;i++){。

table.put(i, new Object());。

System.out.println("添加对象,序号为:"+i);。

}

}

}

/**

*删除对象线程

*/

private static class ThreadDel implements Runnable{。

private Map<Integer, Object> table;。

public ThreadDel(Map<Integer, Object> table){。

this.table=table;。

}

public void run() {。

// TODO Auto-generated method stub。

for(int i=0;i<10;i++){。

try {

Thread.sleep(100);。

} catch (InterruptedException e) {。

// TODO Auto-generated catch block。

e.printStackTrace();。

}

table.remove(i);。

System.out.println("移除对象,序号为:"+i);。

}

}

}

/**

*统计线程

*/

private static class ThreadCount implements Runnable{。

private Map<Integer, Object> table;。

public ThreadCount(Map<Integer, Object> table){。

this.table=table;。

}

public void run() {。

// TODO Auto-generated method stub。

for(int i=0;i<10;i++){。

try {

Thread.sleep(50);。

} catch (InterruptedException e) {。

// TODO Auto-generated catch block。

e.printStackTrace();。

}

System.out.println("当前队列还剩"+table.size()+"个对象");。

}

}

}

这是我的写的demo,不知道符合不符合你的意思,大家共同交流共同进步。

java hashtable初始数组为多大

1 HashMap不是线程安全的 。

hastmap是一个接口 是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而hashtable不允许。

2 HashTable是线程安全的一个Collection。

HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。

HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。

HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。

Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。

最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。

原文地址:http://www.qianchusai.com/javahashtable-40.html

lw/人的肾在哪个部位图片,人的肾脏是在哪个位置的图

lw/人的肾在哪个部位图片,人的肾脏是在哪个位置的图

muduo-70

muduo-70

sscanf-70

sscanf-70

黑苹果解决独显HDMI黑屏问题-50,黑苹果hdmi输出黑屏但有声音

黑苹果解决独显HDMI黑屏问题-50,黑苹果hdmi输出黑屏但有声音

7811-100

7811-100

multiagency-90

multiagency-90

藏之中电影,藏身之处电视剧在线观看

藏之中电影,藏身之处电视剧在线观看

majorette-80

majorette-80

flute,flute什么乐器

flute,flute什么乐器

employee-40

employee-40

三国志战略版兵锋能用吗 - 兵锋技能详细评测与使用指南 三国志战略版调兵和驻守攻略 - 军事部署完全指南 三国志战略版工坊 - 武将搭配·战法组合·阵容推荐 三国志战略版强攻战法全攻略 - 最强战法搭配与使用技巧 三国志战略版虎帐高级建筑详解 - 升级攻略与策略指南 三国志战略版名声攻略 - 快速提升名声方法大全 三国志战略版高顺战法详解 - 高顺战法搭配与使用技巧 三国志战略版孙尚香兵锋 - 完整攻略指南 三国志战略版S3黄月英攻略 - 技能搭配阵容推荐 三国志战略版乐府分配攻略 - 最优资源分配方案与技巧 三国志战略版满级乐府攻略大全 - 升级技巧与玩法解析 三国志战略版火烧连营攻略 - 赤壁之战经典战役解析 三国志战略版同类冲突规则详解 - 游戏攻略指南 三国志战略版潼关之战剧本 - 策略战争手游专题攻略 三国志战略版武将援救攻略大全 - 完整指南 三国志战略版冲突系统详解 - 战略玩法与攻略指南 三国志战略版秘策有什么用 - 秘策系统全解析 三国志战略版测试服列表 - 最新测试服务器信息 三国志战略版先锋测试服申请条件 - 官方最新申请指南 三国志战略版攻城拔寨攻略 - 完整攻城指南与技巧 三国志战略版8级地多少兵能打 - 完整攻略指南 三国志战略版虎杖武将攻略大全 - 技能解析与阵容搭配指南 三国志战略版战略视野 - 掌控战场,决胜千里 三国志战略版陈武自愈攻略 - 技能解析与阵容搭配 三国志战略版夏侯渊武将专题 - 技能搭配与使用攻略 三国志战略版军屯声望系统详解 - 军屯声望获取与提升攻略 三国志战略版兵锋单体攻略大全 - 技能解析与实战技巧 三国志战略版先锋测试服福利 - 豪华礼包等你来领 三国志战略版经武战法全攻略 - 经武战法详解与搭配推荐 三国志战略版张鲁势力攻略 - 武将技能阵容搭配详解