【数据结构】Java里的各种Map
Map
就如它字面意思,是一个从键(key)到值(value)的映射。我们在Map里面存储键值对,根据键得到值,因此键是不能重复的(如果插入一个有重复键的记录,则会覆盖原有的值),但是值可以重复。
Java里面基于对Map的不同访问需求创建了它的不同实现类:
- 对键的顺序没有要求
- 取出键的顺序按照插入记录时的顺序
- 取出键的顺序按照键的升序排序
Map
就如它字面意思,是一个从键(key)到值(value)的映射。我们在Map里面存储键值对,根据键得到值,因此键是不能重复的(如果插入一个有重复键的记录,则会覆盖原有的值),但是值可以重复。
Java里面基于对Map的不同访问需求创建了它的不同实现类:
JavaScript简单数据结构包括数字、字符串、布尔值、null值、undefined值,其他都是对象。
对象时属性的容器,其中每个属性都是名字和值。
JavaScript里面的对象时无类型的,对新属性的名字和值没有限制,适合用于聚集和管理数据,对象里也可以包含其他对象。
MySQL由以下几部分组成:
MySQL区别于其他数据库的最重要的特点就是其插件式的表存储引擎。MySQL插件式的存储引擎架构提供了一系列标准的管理和服务支持,这些标准与存储引擎本身无关,可能是每个数据库系统本身都必需的,如SQL分析器和优化器等,而存储引擎是底层物理结构的实现,每个存储引擎开发者都可以按照自己的意愿来进行开发。
注意:存储引擎是基于表的,而不是数据库。
在计算机程序里,数据存储的方式无外乎两种:顺序存储和链式存储。顺序存储的结构可以称为顺序表,也可以用数组描述,链式存储的结构可以称为链表。
我们每一个学过数据结构的都知道,它们两者各自有一些鲜明的特性,比如:
在面向对象编程里面,我们常常对现实世界建模抽象成一个个类,然后创建它们的对象,通过对象的方法行为去描述逻辑。
纯函数是一种特殊的函数,给它相同的输入永远会得到相同的输出,而且没有任何可观察的副作用。
自从Oracle宣布Java开始收费之后,越来越多的人会考虑从[Open JDK][1]下载安装Java环境。可能自己机器上也会同时并存好几个Java版本,本文以macOS为例介绍一下如何从Open JDK安装并进行管理多版本。
单元测试,也就是对代码较细粒度单元的测试,一般就是测某个方法或函数。说到单元测试,基本上每个开发者都不陌生,时不时会听到“测试覆盖率太低了!”,然后“We need to increase our code coverage!”。经常出bug?好好准备测试吧。
目前HTTP在Web开发中被广泛使用,REST (Representational State Transfer) 很多人应该或多或少都知道些。当然了,比较熟悉的可能主要是GET、POST方法。这篇文章不是介绍REST的定义和如何创建符合REST风格的API,而是讲讲在Web开发中通用的不同HTTP响应状态码的含义。在普通网站开发、分布式集群开发、团队协作方面,如果采用了HTTP作为组件之间交互的协议,遵守通用的响应状态码是很有必要的(一是有充分的信息量、二是避免歧义)。
HTTP响应状态共有5大类,分别是数字1、2、3、4、5开头。