java 从零开始,学习笔记之基础入门<集合>(十六)
集合
集合:将多个元素放入到一个集合对象中去,对应的集合对象就可以用来存储多元素。
Collection接口的子接口:Set接口和List接口。
Map不是Collection接口的子接口。
Collection接口是将一组对象以集合元素的形式组织到一起,在器子接口中分别实现不同的组织方式。
Collection接口的创建需要使用其子接口中的实现类包括:ArrayList类、LinkedList类、Vector类、Stack类
LinkedList双向链表的存储结构,存储元素的规律是先进先出,后进后出。
Vector也可以用来创建一个变长的数组对象,同样也保存了对数组进行操作的方法。
Stack类存储数据先进后出,后进先出
如果我们需要创建一个Collection接口的对象,就可以采用将接口的实现类的对象赋给接口的引用。
|
Collection col = new ArrayList(); |
Set 接口:是Collection 接口的子接口。在Set集合中存储数据是无需的并不重复,如果在相同的操作中存储相同的数据则后存储的数据会将前已经存在的数据替换
Set接口的实现类:TreeSet类(有序)和HashSet类(无序)
创建一个Set集合
|
Set<泛型> set = new HashSet<泛型>(); |
List接口:是Collection 接口的子接口。在List集合中存储数据是有序能重复的。
一个List集合中能不能存储空的字符串(打印List的长度)
创建一个List的集合对象
|
List<泛型> list = new ArrayList<>(); |
Map接口:不是Collection接口的子接口,它的实现类HashMap、TreeMap、HashTable、WeakHashMap
Map集合中存储数据是以K-V的形式存储数据,在Map集合中key的值不能重复,value的值可以重复。
创建一个Map集合对象
|
Map<泛型>map = new HashMap<泛型>(); Map<泛型>map1 = new HashMap<泛型>(); |
HashMap与HashTable的区别?
² HashMap运行有null的值HashTable不允许有Null的值
² HashMap方法不同步 HashTable方法同步
² HashMap中containValue方法 HashTable有一个contain方法
² HashMap线程不安全 HashTable线程安全
² HashMap使用迭代输出 HashTable使用枚举输出
java 从零开始,学习笔记之基础入门<集合>(十六)的更多相关文章
- MyBatis基础入门《十六》缓存
MyBatis基础入门<十六>缓存 >> 一级缓存 >> 二级缓存 >> MyBatis的全局cache配置 >> 在Mapper XML文 ...
- java 从零开始,学习笔记之基础入门<Oracle_基础>(三十三)
Oracle 数据库基本知识 [训练1] 显示DEPT表的指定字段的查询. 输入并执行查询: SELECTdeptno,dname FROM ...
- 《马哥出品高薪linux运维教程》wingkeung学习笔记-linux基础入门课程
计算机原理概念: 1.CPU和内存中的存储单元通信线路称为总线(BUS),总线是被指令和数据复用的,所以也称为前端总线. 2.计算机中计算频率的时间标准即晶体振荡器原理,精确计算时间长度,根据相同的时 ...
- 006 SpringCloud 学习笔记2-----SpringCloud基础入门
1.SpringCloud概述 微服务是一种架构方式,最终肯定需要技术架构去实施. 微服务的实现方式很多,但是最火的莫过于Spring Cloud了.SpringCloud优点: - 后台硬:作为Sp ...
- Android(java)学习笔记105:Map集合的遍历之键值对对象找键和值
package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map ...
- Android(java)学习笔记104:Map集合的遍历之键找值
package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map ...
- Android(java)学习笔记103:Map集合的获取功能
package cn.itcast_01; import java.util.Collection; import java.util.HashMap; import java.util.Map; i ...
- Android(java)学习笔记102:Map集合功能概述
下面通过代码引入Map集合:如下 package cn.itcast_01; import java.util.HashMap; import java.util.Map; /* * 作为学生来说,是 ...
- Vue学习笔记-Vue基础入门
此篇文章是本人在学习Vue是做的部分笔记的一个整理,内容不是很全面,希望能对阅读文章的同学有点帮助. 什么是Vue? Vue.js (读音 /vjuː/,类似于 view) 是一套构建用户界面的渐进式 ...
随机推荐
- iOS 获取本地视频的缩略图
+(UIImage *)getImage:(NSString *)videoURL { AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:[NSU ...
- 【pycharm】pycharm上安装tensorflow,报错:AttributeError: module 'pip' has no attribute 'main' 解决方法
pycharm上安装tensorflow,报错:AttributeError: module 'pip' has no attribute 'main' 解决方法 解决方法: 在pycharm的安装目 ...
- Netbeans 安装emmet插件
一.下载插件 http://plugins.netbeans.org/plugin/48315/emmet 二.点击工具-> 插件 -> 已下载 -> 添加插件 ->(导入下载 ...
- source insight设置tab键为4个空格
首先通过路径(Options->Document Options)进入以下界面: step 1:将 Visible tabs 打勾. step 2 :将 Expand Tabs 打勾. step ...
- Material Designer的低版本兼容实现(一)—— 简介 & 目录
很长一段时间没写东西了,其实是因为最近在研究Material Designer这个东西,熬夜熬的身体也不是很好了.所以就偷懒没写东西,这回开的这个系列文章是讲如何将Material Designer在 ...
- 通过xml文件来设置动画
@android:anim/accelerate_interpolator: 越来越快 @android:anim/decelerate_interpolator:越来越慢 @android:anim ...
- win32多线程-新版本MtVerify.h
api调用错误诊断宏,对GetLastError()函数的封装,并解析错误 从网上找的版本并进行了部分修改 /* * MtVerify.h * * The function PrintError() ...
- FPC and Qt
Introduction There are a number of Qt bindings available: Qt3 A QtC based binding by Theo Another Qt ...
- [leetcode]Word Search @ Python
原题地址:https://oj.leetcode.com/problems/word-search/ 题意: Given a 2D board and a word, find if the word ...
- 基于双向LSTM和迁移学习的seq2seq核心实体识别
http://spaces.ac.cn/archives/3942/ 暑假期间做了一下百度和西安交大联合举办的核心实体识别竞赛,最终的结果还不错,遂记录一下.模型的效果不是最好的,但是胜在“端到端”, ...