1.Collection集合的体系特点

一、Collection集合的体系特点

集合类体系结构

Collection单列集合,每个元素(数据)只包含一个值。

Map双列集合,每个元素包含两个值(键值对)。

 

Collection集合特点

Collection集合特点

● List系列集合:添加的元素是有序可重复有索引的。

◆ ArrayList、LinkedList:有序、可重复、有索引。

● Set系列集合:添加的元素是无序不重复无索引的。

◆ HashSet:无序、不重复、无索引

◆ LinkedHashSet:有序、不重复、无索引

◆ TreeSet:按照默认升序排序、不重复、无索引

【代码示例】

public class Collection1 {
    public static void main(String[] args){
        // 有序、可重复、有所以
        Collection coll1 = new ArrayList();
        coll1.add("Java");
        coll1.add("Java");
        coll1.add("Mybatis");
        coll1.add("23");
        coll1.add("23");
        coll1.add("false");
        coll1.add("false");
        System.out.println(coll1);

        // 无序、不重复、无索引
        Collection coll2 = new HashSet();
        coll2.add("Java");
        coll2.add("Java");
        coll2.add("Mybatis");
        coll2.add("23");
        coll2.add("23");
        coll2.add("false");
        coll2.add("false");
        System.out.println(coll2);
    }
}

运行结果:

[Java, Java, Mybatis, 23, 23, false, false]
[Java, 23, false, Mybatis]

 

集合对于泛型的支持

● 集合都是支持泛型的,可以在编译阶段约束集合只能操作某种数据类型

Collection<String> lists = new ArrayList<String>();
Collection<String> lists = new ArrayList<>(); // JDK1.7之后,泛型类型声明可以省略不写

注意:集合和泛型都只能支持引用数据类型,不支持基本数据类型,所以集合中存储的元素都认为是对象。

【代码示例】出现报错哟!

 

如果集合中要存储基本数据类型的数据怎么办?

// 存储基本类型使用包装类
Collection<String> lists = new ArrayList<>();
Collection<Double> lists = new ArrayList<>();

【代码示例】

Collection<Integer> list1 = new ArrayList<>();
list1.add(23);     //此时是"23"一个对象
list1.add(233);
System.out.println(list1);

Collection<Double> list2 = new ArrayList<>();
list2.add(23.1);
list2.add(233.1);
System.out.println(list2);

 

总结

1、集合的代表是?

● Collection接口

 

2、Collection集合分了哪2大常用的集合体系?

● List系列集合:有序、可重复、有索引。

● Set系列集合:无序、不重复、无索引。

 

3、如何约定集合存储数据的类型,需要注意什么?

● 集合支持泛型。

● 集合和泛型不支持基本类型,只支持引用数据类型。

 

posted @   白森  阅读(274)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
点击右上角即可分享
微信分享提示