Java开发人员容易犯的9个错误
功效打印:[b, d] 在上面这个要领中有一系列的题目,当一个元素被删除的时辰,list巨细减小,然后原先索引指向了其余元素。以是假如你想在轮回里通过索引来删除多个元素,将不会正确事变。 你大概知道行使迭代器是在轮回里删除元素的正确方法,或者你也知道foreach轮回跟迭代器很相同,但究竟环境却不是这样,如下代码: 将抛出ConcurrentModificationException非常。 然而接下来的代码却是OK的: next要领必要在remove要领之前被挪用,在foreach轮回里,编译器会在删除元素操纵后挪用next要领,这导致了ConcurrentModificationException非常。 4、HashTable与HashMap从算法的角度来讲,HashTable是一种数据布局名称。可是在Java中,这种数据布局叫做HashMap。HashTable与HashMap的一个首要的区别是HashTable是同步的,以是,凡是来说,你会行使HashMap,而不是Hashtable。 5、行使荟萃原始范例(raw type)在Java中,原始范例(raw type)和无界通配符范例很轻易让人夹杂。举个Set的例子,Set是原始范例,而Set<?>是无界通配符范例。 请看如下代码,add要领行使了一个原始范例的List作为入参: (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |