Collection和Map类图预览与比较
类图

HashSet和TreeSet的区别:https://www.cnblogs.com/bobi1234/p/10759769.html
HashSet和LinkedHashSet区别:https://www.cnblogs.com/bobi1234/p/10759775.html
ArrayList和Vector的区别:https://www.cnblogs.com/bobi1234/p/10759767.html
ArrayList和LinkedList的区别:https://www.cnblogs.com/bobi1234/p/10759765.html

HashMap和Hashtable的区别:https://www.cnblogs.com/bobi1234/p/10759778.html
HashMap和TreeMap的区别:https://www.cnblogs.com/bobi1234/p/10759779.html
HashMap与ConcurrentHashMap的区别:https://www.cnblogs.com/bobi1234/p/10759800.html
HashMap和LinkedHashMap的区别:https://www.cnblogs.com/bobi1234/p/10759823.html
List数据是否可重复、可为空、可为null
public class ListDemo {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("11");
list.add("22");
list.add("33");
list.add("11");
list.add("");
list.add(null);
System.out.println(list);
List<String> list2 = new LinkedList<>();
list2.add("11");
list2.add("22");
list2.add("33");
list2.add("11");
list2.add("");
list2.add(null);
System.out.println(list2);
}
}
[11, 22, 33, 11, , null]
[11, 22, 33, 11, , null]
结论:ArrayList和LinkedList的值可重复、可为空、可为null
Set数据是否可重复、可为空、可为null
public class SetDemo {
public static void main(String[] args) {
Set<String> set = new HashSet<>();
set.add("11");
set.add("22");
set.add("33");
set.add("11");
set.add("");
set.add(null);
System.out.println(set);
Set<String> set2 = new LinkedHashSet<>();
set2.add("11");
set2.add("22");
set2.add("33");
set2.add("11");
set2.add("");
set2.add(null);
System.out.println(set2);
}
}
[11, 22, 33, , null]
[11, 22, 33, , null]
结论:HashSet和LinkedHashSet的值不能重复,但可为空,可为null
Map数据是否可重复、可为空、可为null
public class MapDemo {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("语文", 100);
map.put("数学", 99);
map.put("语文", 98);
map.put("", 97);
map.put(null, 96);
map.put(null, null);
System.out.println(map);
Map<String, Integer> map2 = new TreeMap<>();
map2.put("语文", 100);
map2.put("数学", 99);
map2.put("语文", 98);
map2.put("", 97);
map2.put("外语", null);
// map2.put(null, 96); NullPointerException
// map2.put(null, null); NullPointerException
System.out.println(map2);
}
}
{=97, null=null, 数学=99, 语文=98}
{=97, 外语=null, 数学=99, 语文=98}
结论:
HashMap的key不可重复,但可为空、可为null,value不做讨论。
TreeMap的key不可重复、不可为null,但可为空,value不做讨论。
Collection和Map类图预览与比较的更多相关文章
- 最近发现了个js传图预览的函数和大家分享下
由于浏览器js沙箱,存在不同域,js无法直接调用电脑文件.在之前做传图预览的时候,基本的思路就是, 将图片先保存到服务器中缓存,然后返回一个服务器路径,并显示出图片,然而这样很耗缓存目录文件的.方法也 ...
- FlexPaper+SWFTool+操作类=在线预览PDF
引言 由于客户有在线预览PDF格式的需求,在网上找了一下解决方案,觉得FlexPaper用起来还是挺方便的,flexpaper是将pdf转换为swf格式的文件预览的,所以flexpaper一般和swf ...
- FlexPaper+SWFTool+操作类=在线预览PDF(转)
引言 由于客户有在线预览PDF格式的需求,在网上找了一下解决方案,觉得FlexPaper用起来还是挺方便的,flexpaper是将pdf转换为swf格式的文件预览的,所以flexpaper一般和swf ...
- vue项目中使用bpmn-流程图预览篇
前情提要 上文已经实现了节点操作的前进.后退.导入.导出等操作,今日来实现“流程图预览”,以及视图的放大缩小 前提:项目安装过bpmn,安装可见上篇文章 实现要点 bpmn提供了两个神器:Modele ...
- js多图预览及上传功能
<%-- Created by IntelliJ IDEA. User: Old Zhang Date: 2018/12/27 Time: 11:17 To change this templa ...
- jdk collections map类图
- hTML5 多图上传预览
<p> <label>请选择一个文件:</label> <input type="file" id="file" mu ...
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
引言 之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询. 方案一 直接在浏览器中打开Office文档在页面上的链接.会弹出如下窗口: 优点:主流浏览器都支持. 缺点: ...
- [Asp.net]常见word,excel,ppt,pdf在线预览方案(转)
引言 之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询. 方案一 直接在浏览器中打开Office文档在页面上的链接.会弹出如下窗口: 优点:主流浏览器都支持. 缺点: ...
随机推荐
- golang web实战之二(iris)
之前写了一篇为:golang web实战之一(beego,mvc postgresql) 听说iris更好: 1. iris hello world package main import &quo ...
- Python--day11(函数的参数)
今日主要内容 1. 函数的参数 2. 函数的嵌套调用 1. 形参与实参 1. 参数介绍: 函数为什么要有参数:因为内部的函数体需要外部的数据 怎样定义函数的参数:在定义函数阶段,函数名在后面( ...
- JS 设计模式九 -- 装饰器模式
概念 装饰者(decorator)模式能够在不改变对象自身的基础上,动态的给某个对象添加额外的职责,不会影响原有接口的功能. 模拟传统面向对象语言的装饰者模式 //原始的飞机类 var Plane = ...
- C#-之属性(2)
1. 属性结合字段和方法得多个方面,对于对象的用户来说,属性就像字段(这样就可以修改属性值或者访问),对于类的实现者来说,属性包括两个各部分get访问器(用于读取属性)和set访问器(用于设置属性 ...
- 【问题解决方案】pygame生成的窗口点右上角关闭按钮未响应问题的解决
pygame生成的窗口点右上角关闭按钮未响应问题的解决: 可在 sys.exit() 前面加上 pygame.quit()
- Linux centos ssh
创建m01.backup.nfs.web01.web02 m01(172.16.1.61).backup(172.16.1.41).nfs(172.16.1.31).web01(172.16.1.7) ...
- SQL进阶随笔--case用法(二)
---恢复内容开始--- 用 CHECK 约束定义多个列的条件关系 今天来说下check和case的用法.其实,CASE 表达式和 CHECK 约束是很般配的一对组合.也许有很多数据库工程师不怎么用 ...
- antd form 自定义验证表单使用方法
import React from 'react'; import classNames from 'classnames'; export default class FormClass exten ...
- 四、Jedis操作Redis
前言: 原来我们操作mysql需要用的jdbc,现在操作redis则需要jedis,jedis是客户端,而redis是服务器,使用jedis客户端来操作redis. 在这里要使用jedis操作red ...
- 基于Android P系统对selinux相关整理
1.首先selinux是一种加强文件安全的一种策略.主要包含进程和文件对象. 在system\sepolicy\public\attributes文件中有: # All types used for ...