java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java containsKey 、contains方法

Java中containsKey 、contains方法的使用及注意事项详解

作者:技术分享~

这篇文章主要介绍了Java中containsKey 、 contains方法的使用及注意事项的相关资料,两者分别用于检查键和元素存在性,所属接口不同,性能差异显著,文中通过代码介绍的非常详细,需要的朋友可以参考下

前言

在 Java 中,containsKey 和 contains 是两个常用的方法,分别用于检查集合中是否包含指定的键或元素。虽然它们的功能类似,但它们的应用场景和实现方式有所不同。本文将详细解析这两个方法的含义、作用、使用注意事项,并提供示例代码。

1. containsKey 方法详解

1.1 含义

containsKey 是 Map 接口中的方法,用于检查 Map 中是否包含指定的键。

1.2 作用

1.3 使用场景

1.4 方法签名

boolean containsKey(Object key)

1.5 使用注意事项

1.6 示例代码

import java.util.HashMap;
import java.util.Map;

public class ContainsKeyExample {
    public static void main(String[] args) {
        // 创建一个 HashMap
        Map<String, Integer> map = new HashMap<>();
        map.put("apple", 10);
        map.put("banana", 20);
        map.put("cherry", 30);

        // 检查键是否存在
        System.out.println("Contains key 'apple': " + map.containsKey("apple")); // true
        System.out.println("Contains key 'grape': " + map.containsKey("grape")); // false

        // 检查 null 键
        map.put(null, 40);
        System.out.println("Contains key 'null': " + map.containsKey(null)); // true
    }
}

2. contains 方法详解

2.1 含义

contains 是 Collection 接口中的方法,用于检查集合中是否包含指定的元素。

2.2 作用

2.3 使用场景

2.4 方法签名

boolean contains(Object o)

2.5 使用注意事项

2.6 示例代码

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class ContainsExample {
    public static void main(String[] args) {
        // 创建一个 ArrayList
        List<String> list = new ArrayList<>();
        list.add("apple");
        list.add("banana");
        list.add("cherry");

        // 检查元素是否存在
        System.out.println("Contains 'apple': " + list.contains("apple")); // true
        System.out.println("Contains 'grape': " + list.contains("grape")); // false

        // 检查 null 元素
        list.add(null);
        System.out.println("Contains 'null': " + list.contains(null)); // true

        // 创建一个 HashSet
        Set<Integer> set = new HashSet<>();
        set.add(10);
        set.add(20);
        set.add(30);

        // 检查元素是否存在
        System.out.println("Contains 20: " + set.contains(20)); // true
        System.out.println("Contains 40: " + set.contains(40)); // false
    }
}

3. containsKey 与 contains 的区别

特性containsKeycontains
所属接口Map 接口Collection 接口
作用对象检查 Map 中是否包含指定的键检查集合中是否包含指定的元素
性能HashMap:O(1);TreeMap:O(log n)ArrayList:O(n);HashSet:O(1)
依赖方法依赖 hashCode 和 equals 方法依赖 equals 方法
使用场景操作 Map 时检查键是否存在操作集合时检查元素是否存在

4、总结

   containsKey 和 contains 是 Java 中常用的方法,分别用于检查 Map 中的键和集合中的元素是否存在。理解它们的区别和使用场景,可以帮助我们编写更高效、更健壮的代码。在实际开发中,根据需求选择合适的集合类型和方法,可以显著提升程序的性能。

到此这篇关于Java中containsKey 、contains方法的使用及注意事项详解的文章就介绍到这了,更多相关Java containsKey 、 contains方法 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文