栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Collection 类的功能方法 --《JAVA编程思想》 67

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Collection 类的功能方法 --《JAVA编程思想》 67

今天和大家分享 Collection 类能够执行的方法,这些方法同样适用于实现了 Collection 接口的 Set 和 List 。

1.添加单个元素

add(T) 用于添加持有泛型 T 的参数。

    public static void main(String[] args) {
        Collection c = new ArrayList();
        c.add("China");
        System.out.println(c);
    }
[China]
2.批量添加元素

addAll(Collection) 用于批量添加元素。

    public static void main(String[] args) {
        Collection c = new ArrayList();
        ArrayList arrayList = new ArrayList<>();
        arrayList.add("China");
        arrayList.add("USA");
        arrayList.add("UK");
        c.addAll(arrayList);
        System.out.println(c);
    }
[China, USA, UK]
3.清空元素

clear() 用于清空容器内元素。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK"};
        Collection c = new ArrayList(Arrays.asList(countries));
        System.out.println(c);
        c.clear();
        System.out.println(c);
    }
[China, USA, UK]
[]
4.移除指定元素

remove(Object) 移除指定元素,若元素在容器内,则进行移除返回 true,否则返回 false。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK"};
        Collection c = new ArrayList(Arrays.asList(countries));
        System.out.println(c);
        System.out.println(c.remove("UK"));
        System.out.println(c.remove("Russia"));
        System.out.println(c);
    }
[China, USA, UK]
true
false
[China, USA]
5.批量移除元素

remove(Collection) 可批量移除参数中的所有元素,只有执行任何一个元素的移除操作则返回 true,否则返回 false。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        System.out.println(c);
        ArrayList arrayList = new ArrayList<>();
        arrayList.add("USA");
        arrayList.add("UK");
        arrayList.add("Korea");
        System.out.println(c.removeAll(arrayList));
        System.out.println(c.removeAll(arrayList));
        System.out.println(c);
    }
 
[China, USA, UK, Russia, Korea]
true
false
[China, Russia]
6.获取元素数目

size() 可获取容器内元素的数目。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        System.out.println(c.size());
    }
5
7.遍历元素

iterator() 返回一个 Iterator ,可以用来遍历容器内所有元素。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        Iterator iterator = c.iterator();
        while (iterator.hasNext()){
            System.out.println(iterator.next());
        }
    }
China
USA
UK
Russia
Korea
8. 判断容器是否为空

isEmpty() 当容器内没有元素的时候返回 true ,否则返回 false。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        System.out.println(c.toString());
        System.out.println(c.isEmpty());
        c.clear();
        System.out.println(c.isEmpty());
    }
[China, USA, UK, Russia, Korea]
false
true
9.获取元素交集

retainAll(Collection) 只保存参数中的元素,相当于获取两者的交集。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        System.out.println(c);
        ArrayList arrayList = new ArrayList<>();
        arrayList.add("USA");
        arrayList.add("UK");
        arrayList.add("Japan");
        System.out.println(arrayList);
        c.retainAll(arrayList);
        System.out.println(c);
    }
 
[China, USA, UK, Russia, Korea]
[USA, UK, Japan]
[USA, UK]
10.获取容器构成的数组

toArray() 会返回包含所有元素的 Object 数组。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        Object[] objects = c.toArray();
        System.out.println(Arrays.toString(objects));
    }
[China, USA, UK, Russia, Korea]

假如我们需要返回相同类型参数的数组,则需要传入对应类型参数的数组作为参数,如 T toArray(T[] a)。作为参数的数组长度若小于等于容器元素个数,则返回数组的长度等于容器元素个数;若作为参数的数组长度大于容器元素个数,多出来的位置则为 null。

    public static void main(String[] args) {
        String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
        Collection c = new ArrayList(Arrays.asList(countries));
        String[] s1 = c.toArray(new String[0]);
        System.out.println(Arrays.toString(s1));
        String[] s2 = c.toArray(new String[10]);
        System.out.println(Arrays.toString(s2));
    }
[China, USA, UK, Russia, Korea]
[China, USA, UK, Russia, Korea, null, null, null, null, null]

本次分享至此结束,希望本文对你有所帮助,若能点亮下方的点赞按钮,在下感激不尽,谢谢您的【精神支持】。

若有任何疑问,也欢迎与我交流,若存在不足之处,也欢迎各位指正!

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号