Map是不是集合?



Map是不是集合?

一、起因

今天在一个群里跟几位朋友就“map是不是集合“”争执了起来;几位朋友一致认为map不是集合,他们说只有Collection接口下的才是集合,而我认为Collection和Map下的实现类都是集合类。

二、发展

于是我开始在网上搜索一下,发现然并卵,没有找到我想要的结果。于是乎,我翻开了书微笑。在《java核心技术 卷一 第九版》一书中的569页13.3节 集合框架 的倒数第16行原文:“集合有两个基本的接口:Collection和Map。可以使用下列方法向集合中插入元素……”
另附

集合 包括了Collection和Map??真的吗??
我又翻开了《java编程思想》,LOOK


java编程思想》的第11章,第216页,正数第13行,中原文:“……其中基本的类型是LIst、Set、Queue和Map。这些对象类型也称为集合类,但由于Java类库中使用了Collection这个名字来指代该类库的一个特殊子集,所以我使用了范围更广的术语‘容器’称呼它们……
真相大白
原来如此
我们争执的'集合'大部分指的是Collection接口下的实现类,而在java核心技术卷一书上把Map也算做集合类的根接口之一,但是java编程思想里用了"集合类"和"容器"两个称呼进行了说明和解释,所以Map是否是集合类(集合框架)的根接口是一个翻译问题!
书中所说的集合框架的总称'集合类'和'容器'是一个概念!!!

三、总结

Map是不是集合并不重要,重要的是在我们的工作和学习中应该明确说明和指出集合
是指容器(即《java编程思想》中的'集合类') 还是指Collection接口下的实现类
其实,集合(容器)框架的结构的理解和使用才是最重要的。
至于,Map是不是集合?
这个模棱两可的问题的就不要钻牛角尖啦~如果有人在你面前谈起Map是不是集合,
请扶一下眼镜,并回问一句他所说的"集合"是容器(集合框架)还是Collection接口

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/451478.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/451478.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA自学笔记08

JAVA自学笔记08 1、构造方法私有,外界就不能再创建对象 2、说明书的制作过程 1)写一个工具类,在同一文件夹下,测试类需要用到工具类,系统将自动编译工具类;工具类的成员方法一般是静态的,因此…

创业,不能兼职

一直在寻找靠谱的技术人才加入自己的创业团队。这个靠谱,不仅是技术靠谱,还要有相同的价值观。价值观的概念也很广泛,除了人品,还有对一些涉及到做人做事最本质的一些理念要相同。最起码的一条是,你是不是真的想好了决…

Java 集合系列07之 Stack详细介绍(源码解析)和使用示例

转载 http://www.cnblogs.com/skywang12345/p/3308852.html转载于:https://www.cnblogs.com/lizhouwei/p/9162251.html

@Controller和@RestController的区别

RestController注解相当于ResponseBody + Controller合在一起的作用。 1)如果只是使用RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是…

spring AOP解说

1.aop切面编程就是在常规的执行java类中方法前或执行后加入自定义的方法。 比如你本来每天都去打酱油,去,打酱油,回。 现在我每天在你打酱油路上等着,你去打酱油的时候我打你一顿,回来的时候给你点糖果吃。 你根本不…

接口 EnvironmentAware

凡是被Spring管理的类,实现接口 EnvironmentAware 重写方法 setEnvironment 可以在工程启动时,获取到系统环境变量和application配置文件中的变量。

简单安装ELK分析日志及使用心得

ELK是由Elasticsearch、Logstash、Kibana三个组件组成的。Elasticsearch:是ELK的核心插件,是一个基于Lucene的搜索服务器,它提供一个分布式多用户能力的全文搜索引擎,能够达到实时搜索,稳定,可靠&#xff0…

寄生式创业更容易成功

上次参加站长大会见识了不少创业团队和个人站长,他们中许多人都曾有过或正在过着苦逼的日子,不过我见到更多的还是他们风光的一面,在这次大会我见到了很多成功的创业团队,例如专门做微博营销的团队、依附于QQ空间的团队、专做腾讯…

JS单引号嵌套的问题,怎么改才能对呢!

JS单引号嵌套的问题&#xff0c;怎么改才能对呢&#xff01; https://zhidao.baidu.com/question/416584343.html document.getElementById(celbid).innerHTML<inputname""type"text"οnblur"celchangeb(celaid,celbid);">;这段代码是JS显…

@RequestParam的作用

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 MVC另外一个特性是其提取和解析请求参数的能力。让我们继续重构上面的方法&#xff0c;并在其中添加RequestParam注解&#xff1a; Requ…

前端入门教程(七)CSS属性设置

宽和高 width属性可以为元素设置宽度。 height属性可以为元素设置高度。 块级标签才能设置宽度&#xff0c;内联标签的宽度由内容来决定。 字体属性 文字字体 font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体&#xff0c;则会尝试下一个…

java 深入了解DTO及如何使用DTO

这篇文章主要来谈论一下DTO使用的场合及其带来的好处。首先要理解DTO是什么&#xff1f; DTO就是数据传输对象(Data Transfer Object)的缩写。DTO模式&#xff0c;是指将数据封装成普通的JavaBeans&#xff0c;在J2EE多个层次之间传输。 DTO类似信使&#xff0c;是同步系统中…

图解CPU发展史

随着科学技术和人们对物质水平要求的不断提高&#xff0c;CPU作为电脑的核心组件&#xff0c;也发生了翻天覆地的变化&#xff0c;从1971年只有2300颗晶体管的Intel 4004微处理器到现在的以亿为单位的Intel i7处理器&#xff0c;科技发展的步伐从未停止&#xff0c;随着对原有技…

1031 查验身份证

题目链接&#xff1a;https://pintia.cn/problem-sets/994805260223102976/problems/994805290334011392 题解&#xff1a; 1 #include <iostream>2 #include<cstdio>3 #include<string>4 using namespace std;5 6 int main() {7 int weigth[] { 7,9,10…

漫谈程序员系列:一张图道尽程序员的出路

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 《推背图》相传由唐太宗时期的司天监李淳风和袁天罡合著&#xff08;此两人其实是超级武学高手&#xff0c;参见小椴的《开唐》&#xf…

使用@Order调整配置类加载顺序

4.1 Order Spring 4.2 利用Order控制配置类的加载顺序 4.2 演示 两个演示bean package com.wisely.spring4_2.order;public class Demo1Service {}package com.wisely.spring4_2.order;public class Demo2Service {}两个配置类,注意Order配置加载的顺序 package com.wisely.…

[php] 高级教程

include 和 require 语句用于在执行流中插入写在其他文件中的有用的代码。 include 和 require 除了处理错误的方式不同之外&#xff0c;在其他方面都是相同的&#xff1a; require 生成一个致命错误&#xff08;E_COMPILE_ERROR&#xff09;&#xff0c;在错误发生后脚本会停止…

常见电脑字符编码总结

一 、背景知识1、计算机中所有的数据都用01串来表示&#xff0c;至于一串01到底代表什么是由软件来设定的。比如&#xff1a;01111101111101010111110111110101 可以理解为一条指令&#xff0c;也可以理解为4个字节的char字符&#xff0c;具体是什么要看这个数据是在代码段还…

jsp+easyui+DataGrid 例子

转自:https://blog.csdn.net/l3922768721/article/details/51597977 导入js和css <% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8"%> <% taglib uri"http://java.sun.com/jsp/jstl/core"…

@Pointcut的用法

Pointcut 是指那些方法需要被执行"AOP",是由"Pointcut Expression"来描述的.Pointcut可以有下列方式来定义或者通过&& || 和!的方式进行组合. args()args()execution()this()target()target()within()within()annotation其中execution 是用的最多的…