×

java map面试题 异步 hash

java中HashMap和HashTable面试题问题,为什么hashmap是属于异步的呢并且异步的hashmap为什么适合单线程?hash值是什么

admin admin 发表于2022-07-14 09:22:35 浏览110 评论0

抢沙发发表评论

java中HashMap和HashTable面试题问题,为什么hashmap是属于异步的呢并且异步的hashmap为什么适合单线程

提取,学会

    Hashmap和Hashtable的比较是Java访谈中的一个常见问题。它用于测试程序员是否可以正确使用集合类,以及他们是否可以随机适应多个想法来解决问题。哈希玛普的工作原理,arraylist和vector之间的比较,此问题是与该问题最经典的问题Java Collection Framework.hashtable是一个过时的集合类,已在Java API中长期存在。在Java访谈中很容易提出哈希图,甚至成为收集框架访谈问题中最常见的问题,因此请不要忘记在参加任何Java访谈之前为这个问题做准备。

    在本文中,我们不仅会看到hashmap和Hashtable之间的区别,而且还可以看到它们之间的相似之处。

    hashmap和hashtable之间的区别

    Hashmap和Hashtable都实现了MAP接口,但是您必须在决定之前弄清楚它们之间的差异。主要差异是:线程安全性性性,同步(同步)和速度。

  • hashmap可以等效于hashtable。除了hashmap外,它没有同步,并且可以接受null(哈希姆普可以接受键值(键)和值,并且可以接受)。

  • hashmap不同步,并且hashtable已同步,这意味着hashtable是螺纹的安全性,并且多个线程可以共享一个hashtable。如果没有正确的同步,则多个线程将无法共享hashmap.java 5提供contrenthashmap,这是hashtable的替代方案,它比盖上图更好。-异步

  • 另一个区别是,哈希图的迭代器是失败迭代器,hashtable的枚举迭代器并不是失败 - 因此,当其他线程更改hashmap的结构(增加或删除元素)时,consurrentModification Exception将被抛弃,抛弃,抛弃,抛弃。但是迭代器本身的删除()方法不会抛出consurrentModificationException异常。但是这不是一定的行为,具体取决于JVM。这也是枚举和迭代器之间的差异。-hash

  • 由于Hashtable是安全且同步的,因此它比单个线程环境中的hashmap慢。如果您不需要同步,只需要一个线程,那么使用hashmap就比Hashtable更好。

  • Hashmap不能保证地图中的元素顺序会随着时间的推移而变化。

  • 注意一些重要术语:

    1)sychronized意味着只有一个线程可以更改空语。也就是说,当更新任何线程时,当需要更新时,您必须首先获得同步锁定。其他线程必须等到释放同步锁之前,您才能再次获得同步锁定更新。

    2)故障安全和迭代器迭代器相关。如果集合对象创建迭代器或listotrator,然后其他线程尝试“结构上”更改集合对象,将抛出ConsurrentModification Exception exception。通过set()方法对象,因为这不会从“结构”中更改集合。但是,如果结构已更改,然后调用set()方法,则将丢弃fiLlegalArgumentedException。-异步

    3)结构更改是指删除或插入元素,这将影响地图的结构。

    我们可以制作哈希图同步吗?

    可以通过以下语句同步哈希图:map m = collections.synchronizemap(havemap);

    综上所述

    Hashtable和Hashmap有几个主要区别:线程安全性和速度。在需要完全安全的线程时使用hashtable,如果您使用Java 5或更高版本,请使用ConcurrentHashMap。

    原始链接:javarevisited翻译:impertnew.com-唐小娟翻译链接:http://www.importnew.com/7010.html

hash值是什么

这是一种加密文档验证的方法。更熟悉的验证算法是奇观验证和CRC验证。这两种类型的验证具有抵抗数据篡改的能力。他们可以在一定程度上检查和纠正数据。传输中的通道错误代码不会阻止恶意破坏数据。 MD5HASH算法的“数字指纹”特性使其成为最广泛使用的文件完整性验证和(校验和)算法。许多UNIX系统都有计算MD5CHECKSUM的命令。数字签名哈希算法也是密码系统的重要组成部分。由于不对称算法的操作速度较慢,因此一个路签名函数在数字签名协议中起着重要作用。对于哈希值(也称为数字签名的“数字摘要”),统计学上可以被视为与文件本身等同于数字签名。这种协议还有其他优势。检查协议也称为“挑战认证模式:可以聆听传输通道,但是在不篡改的情况下,这是一种简单且安全的方法。-hash

java面试题 大虾们请进

1. MAP接口在JDK,Hashmap和Hashtable中实现。 Hashmap可以使用null值密钥。 Hashtable不能使用空键,但是值可以为空。地图映射= new Hashmap(); map.put(null,null); //密钥和值可以为空。但是,只能将其添加到NULL键2.分类和遍历和调用而无需调用删除方法。可以通过集合下的排序方法对排序进行排序,并且可以通过循环或迭代器迭代器进行遍历。列表= new ArrayList(); list.Add(8); list.Add(5); list.Add(12); list.Add(3); list.remove(12); //删除.sort(列表)的12个元素集合; //(integer num:list)的集合排序{system.out.println(num);} 3.JSP将以第一个请求转换为服务,因此它本质上是JSP JSP,Servlet与Servlet没有区别。但是,表达式存在差异:A.JSP由HTML和CSS和Java脚本代码等静态页面技术组成。它存在于文本中。 servlet是一个程序,而不是文本。 B. Servlet需要在将其部署到容器中之前将其编译成类,然后以源文本文件的形式将JSP部署到容器中。 C。客户端通过JSP文件名向JSP发送访问请求,Servlet需要在Web.xml中描述其URI地址,并且必须通过配置地址访问客户端以访问,而不是访问Servlet的文件名。-异步