- 浏览: 67130 次
文章分类
contains(), containsKey(), containsValue()
调用 equals() 方法来判断
对于 Object 类,
public boolean equals(Object obj)
其比较规则为:当参数obj引用的对象与当前对象为同一个对象时,就返回true,否则返回false.
所以,在默认情况下, equals() 和 == 等价,均比较引用值(即地址),除非那些已经重写 equals() 方法的类
在开发中,自定义类,如果要调用这些方法来判断,必须重写 equals() 和 hashCode(),否则,始终为 false
根据 equals(Object) 方法,两个对象是相等的,那么在两个对象中的每个对象上调用 hashCode 方法都必须生成相同的整数结果。
注意,在重写equals方法时,要注意满足离散数学上的特性
1、自反性 :对任意引用值X,x.equals(x)的返回值一定为true.
2 对称性: 对于任何引用值x,y,当且仅当y.equals(x)返回值为true时,x.equals(y)的返回值一定为tue;
3 传递性:如果x.equals(y)=true, y.equals(z)=true,则x.equals(z)=true
4 一致性:如果参与比较的对象没任何改变,则对象比较的结果也不应该有任何改变
5 非空性:任何非空的引用值X,x.equals(null)的返回值一定为false
发表评论
-
去掉标点
2015-10-28 14:56 0String regPunctuation = "[ ... -
分割多个空格字符
2015-02-14 07:53 0String s = " -8.5521 1 ... -
ResultSet 记录数
2013-05-17 23:58 10641. select count(*) from table; ... -
编程中的相对路径
2013-04-17 19:58 877project中的相对路径,以工程名为相对路径 SAT ... -
移位操作
2013-04-16 19:07 0左移,<< 补0 右移,>> 无符号 ... -
字符串
2013-04-14 16:42 855c++ 中 常量字符串存储在单独额内存区域, ... -
spring+hibernate 声明式事务管理
2013-03-01 21:24 1130之前在使用 spring+hibernate 声明式事务管理时 ... -
hibernate中的映射文件加载路径
2013-03-01 21:13 2659hibernate中,hbm.xml映射文件加载,目前据我所知 ... -
try中 finally 与 return
2012-12-18 22:59 605try {}里有一个return语句,那么紧跟在这个try后的 ... -
编程时的错误
2012-12-17 11:29 01. 变量,容器需要 归零 e.g 在循环中,某些变量要在 ... -
eclipse debug
2012-12-17 11:22 0hit count 设置执行次数 适合程序中的for循环(设 ... -
编程的不好习惯
2012-12-09 14:54 0编程的不好习惯 1. 关于求最大最小值,不要假设一个可能的最 ... -
web项目开发一定要有lib文件夹
2012-12-07 19:43 1041进行web开发时,在 WebContent --> ... -
嵌套容器 需要测试
2012-12-04 21:08 0嵌套容器, HashMap<Integer, Array ... -
关于hibernate中delete的疑问
2012-12-04 20:23 0现在我的hibernate开发中,关于 delete 操作, ... -
HashMap的读取
2012-12-01 17:25 2357HashMap的读取 调用 entrySet() ... -
json中key must be strings, unquoted错误
2012-12-01 00:14 5133json中key 必须是 string类型,包括JSONObj ... -
java 对象排序
2012-11-21 21:47 0java对象排序,有两种 1. 实现java.lang.Co ... -
设置eclipse工程jvm大小
2012-11-21 16:28 846在eclipse中设置某工程jvm大小,只对该工程有效 修改 ... -
Java Build Path
2012-11-15 12:39 0右键单击项目, build path -> config ...
相关推荐
Map 接口继承自 Collection 接口,提供了一些特定的方法,例如,containsKey、containsValue 等。 常见的 Map 实现类有 HashMap 和 TreeMap。 * HashMap 是一个基于哈希表实现的 Map,提供了快速的查找和插入删除...
- `containsValue(V value)`: 检查给定的值是否存在于HashMap的任何键值对中。 - `remove(K key)`: 删除指定键的键值对。 - `size()`: 返回HashMap中键值对的数量。 - `clear()`: 清空HashMap中的所有键值对。 在...
3. `Map`的`containsKey()`或`containsValue()`方法可能会受到`equals()`和`hashCode()`的影响,`containsKey()`依赖`equals()`检查键是否匹配,`containsValue()`则需要遍历值的列表,也可能用到`equals()`。...
- Hashtable包含contains方法,HashMap则将其替换为containsKey和containsValue方法,以避免混淆。 以上是关于Java基础和面试题目的解析,涵盖了类继承、构造器、线程同步、异常处理、位运算、对象传递、switch...
- `HashMap`的`contains`方法被移除,改为了`containsValue`和`containsKey`。 - `Hashtable`继承自`Dictionary`类,`HashMap`实现了`Map`接口。 - `HashMap`方法不是同步的,`Hashtable`方法是同步的。 4. **...
- HashMap移除了contains方法,改为了containsValue和containsKey,避免混淆。 - Hashtable继承自Dictionary类,HashMap则是Java 1.2引入的Map接口的一个实现。 2. **char型变量与中文汉字** - Java的char类型...
Map接口的API包括put()、get()、containsKey()、containsValue()、remove()等方法,以及keySet()、values()和entrySet()用于获取键、值和键值对的集合视图。 6. Map接口中的entrySet()返回的集合支持通过迭代器进行...
5. **containsValue(Object value)**:判断Map中是否存在指定的值。 6. **isEmpty()**:检查Map是否为空。 7. **size()**:返回Map中键值对的数量。 8. **keySet()**:获取Map中所有键的Set视图,用于遍历。 9. **...
- 主要方法:包括put、get、remove、containsKey、containsValue、size等,以及清空和复制Map的方法。 2. TreeMap - 数据结构:TreeMap使用红黑树(一种自平衡二叉查找树)来存储键值对,保证了插入、删除和查找...
- Map接口:存储键值对,提供`put()`, `get()`, `remove()`, `containsKey()`, `containsValue()`等操作,以及keySet(), values(), entrySet()集合视图。 3. **实现类**:除了接口外,还有一些基础实现类,如...
- **containsKey()**和**containsValue()**:检查Map中是否存在指定的键或值。 5. **选择原则** - 如果需要保持元素的插入顺序,选择LinkedList或LinkedHashSet或LinkedHashMap。 - 对于快速查找,选择ArrayList...
- **containsKey()**和**containsValue()**:分别检查Map中是否包含指定的键或值。 - **size()**:返回Map中键值对的数量。 - **clear()**:清空整个Map。 - **isEmpty()**:检查Map是否为空。 在遍历Map时,可以...
`containsValue(V value)`检查值是否存在,`size()`返回映射的大小,`isEmpty()`检查映射是否为空,`equals(Map)`比较映射是否相等,`keySet()`返回所有键的集合,`values()`返回所有值的集合,以及`entrySet()`返回...
HashMap提供了多种基本操作,包括put、get、containsKey、containsValue、remove、clear等。 * put操作:用于将键值对存储到HashMap中,例如`map.put(1, "Barcelona");`。 * get操作:用于根据键获取对应的值,例如...
HashMap 把 Hashtable 的 contains 思路方法去掉了,改成 containsValue 和 containsKey,因为 contains 思路方法容易让人引起误解。Hashtable 继承自 Dictionary 类,而 HashMap 是 Java 1.2 引进的 Map interface ...
- `containsValue(Object value)`: 检查Map是否包含指定的值。 - `remove(Object key)`: 移除与指定键关联的键值对。 - `size()`: 返回Map中键值对的数量。 - `clear()`: 清除Map中的所有元素。 - `keySet()`: 返回...
- `containsValue(Object value)`: 检查Map中是否存在指定的值。 - `remove(Object key)`: 删除与给定键关联的键值对。 - `clear()`: 清空Map。 - `size()`: 获取Map中的键值对数量。 了解并熟练掌握这些集合...
HashMap是现代的Map实现,允许null键值,方法非同步,更高效,提供了containsValue和containsKey方法。 10. **Overload与Override**:Overload是方法签名(包括方法名和参数列表)的不同,可以改变返回类型;...
HashMap 把 Hashtable 的 contains 思路方法去掉了,改成 containsValue 和 containsKey,因为 contains 思路方法容易让人引起误解。 4. final, finally, finalize 的区别 final 用于声明属性、方法和类,分别表示...