JAVA 应用与开发 - 集合与映射JAVA 应用与开发 集合与映射 让我们愉快的 Coding 起来吧... ��� �������������� November 4, 2019 ���� �����List����Set�����Map�的������� ���������� ������iterator��Enumeration ��������� API ������的������������ 1 28 java.util.Map ����������Map ������集��集合 ����映射��集的��������的�������� Object put(Object key, Object value) 向当前映射中加入一组新的健—值对,并返回所加入元素的 “值”,如果此映射中以前包含一个该键的映射关系,则用新值 替换旧值。 Object get(Object key) boolean Map �� java.util.Map ����������Map ������集��集合 ����映射��集的��������的�������� Object put(Object key, Object value) Object get(Object key) 返回此映射中映射到指定键的值,没有则返回 null。 boolean isEmpty() void clear() int0 码力 | 66 页 | 713.79 KB | 1 年前3
《Java 应用与开发》课程讲义 - 王晓东109 9.8 课后习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 10 集合与映射 111 10.1 集合概念及分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 10.1.1 集合和数组 . . 119 10.5.3 Comparable 接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 10.6 映射 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 10.6.1 HashMap 16.5.3 Servlet 启动时机 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 16.5.4 Servlet 映射 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 16.6 Servlet 部署 . . . . . . . .0 码力 | 330 页 | 6.54 MB | 1 年前3
Java 应用与开发 - Servlet 编程部署 Servlet 示例 Web 工作模式 ▶ Web 请求方式主要有GET、POST、PUT、DELETE 和 HEAD。 ▶ Web 响应一般情况下是 HTML 文档,也可以是其他类型资 源。 ▶ Web 使用 MIME (Multipurpose Internet mail Extensions) 标准来确定具体的响应类型。HTTP 响应总体上分为两类: 文本类型(纯文本字符、HTML、XML)和二进制原始类型 Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet 类的对象,调用其构造 方法,然后调用 init() 方法。 6. 如果有实例在运行,则根据请求的方法是 Web 容器接收到请求,检查是 Servlet 请求,将处理交给 Servlet 引擎。 3. Servlet 引擎根据 URL 地址检查是否有 Servlet 映射,如果 没有则返回错误信息给浏览器。 4. 有 servlet 映射时,先检查是否有实例在运行。 5. 如果没有实例运行,则创建 Servlet 类的对象,调用其构造 方法,然后调用 init() 方法。 6. 如果有实例在运行,则根据请求的方法是0 码力 | 50 页 | 725.36 KB | 1 年前3
Nacos架构&原理
个是我们开源是否晚了,如何定位和打造竞争力;第二是内部有三个产品(Configserver 非持久注 册中心,VIPServer 持久化注册中心,Diamond 配置中心),是开源三个产品还是合成⼀个产品开 源;第三个问题是开源产品跟商业化产品的关系是什么,是否会削弱商业化产品的竞争力。围绕这 几个问题,我们吵到深夜两点。 前言 < 10 六点出海打渔,清晨冰冷的海风,摇曳的小船,撒出大网后我们忍受着寒冷,焦急和期望的等待着, 年开源是否晚了?是否要做?如何定位和打造竞争力? 相比当时比较流行的竞品,我们确实开源晚了⼀些,但是相比于整个行业其实不晚,因为当时云原 生和微服务整个普及度还很低;还有我主管当时还强调两个点,第⼀个点是我们当时是⼀个闭源的 ⼀个软件,经常有业务方跳出来说你看 Eureka 多好,你们哪里哪里不行,如果我们不开源去打⼀ 打,怎么更好的证明我们更好,还有⼀个点是当时我们有商业化产品的,虽然我们知道我们更好, 但是奈何用户选择的是 存储模块:解决数据持久化、非持久化存储,解决数据分片问题。 插件 Nameserver:解决 Namespace 到 ClusterID 的路由问题,解决用户环境与 Nacos 物理环境 映射问题。 CMDB:解决元数据存储,与三方 CMDB 系统对接问题,解决应用,人,资源关系。 Metrics:暴露标准 Metrics 数据,方便与三方监控系统打通。 Trace:暴露标准0 码力 | 326 页 | 12.83 MB | 10 月前3
Apache Shiro参考手册中文版 在任何环境下使用 Session API,即使没有 Web 或 EJB 容器。 在身份验证,访问控制期间或在会话的生命周期,对事件作出反应。 聚集一个或多个用户安全数据的数据源,并作为一个单一的复合用户“视图”。 启用单点登录(SSO)功能。 为没有关联到登录的用户启用"Remember Me"服务 … 以及更多——全部集成到紧密结合的易于使用的 API 目录。然后在新目录下创建包含以下内容的 shiro.ini 文件: 如你所见,这个配置基本上建立了一小组静态用户帐户,对于我们的第一个应用程序已经足够了。在后面的章节中, 你将看到我们如何使用更复杂的用户数据源,如关系数据库,LDAP 的 AcitveDirectory,以及更多。 Referencing the Configuration 现在我们已经定义好了一个 INI 文件,我们可以在我们的教程应用程序类中创建 的主要设计理念,Subject 和 SecurityManager。 但这是一个相当简单的应用程序。你可能已经问过你自己,“如果我不想使用 INI 用户帐户,而是要连接到一个更 复杂的用户数数据源,该怎么办呢?”。 要回答这个问题,需要对 Shiro 的架构和支持的配置机制有更深一些的理解。我们下面将涉及到 Shiro 的架构。 Apache Shiro Architecture0 码力 | 92 页 | 1.16 MB | 1 年前3
跟我学Shiro - 张开涛nshilongnian.iteye.com/ 7 也需要从 Realm 得到用户相应的角色/权限进行验证用户是否能进行操作;可以把 Realm 看 成 DataSource,即安全数据源。 也就是说对于我们而言,最简单的一个 Shiro 应用: 1、 应用代码通过 Subject 来进行认证和授权,而 Subject 又委托给 SecurityManager; 2、 我们需要给 认证通过了; Authrizer:授权器,或者访问控制器,用来决定主体是否有权限进行相应的操作;即控制 着用户能访问应用中的哪些功能; Realm:可以有 1 个或多个 Realm,可以认为是安全实体数据源,即用于获取安全实体的; 可以是 JDBC 实现,也可以是 LDAP 实现,或者内存实现等等;由用户提供;注意:Shiro 跟我学 Shiro——http://jinnianshilongnian principals 和 credentials 组合就是用户名/密码了。接下来先进行一个基本的身份认 证。 另外两个相关的概念是之前提到的 Subject 及 Realm,分别是主体及验证主体的数据源。 环境准备 本文使用 Maven 构建,因此需要一点 Maven 知识。首先准备环境依赖: 添加 junit、common-logging0 码力 | 219 页 | 4.16 MB | 10 月前3
Hello 算法 1.0.0b4 Java版速排序、归并排序、二分查找等都需 要在数组上进行。 ‧ 查找表:当我们需要快速查找一个元素或者需要查找一个元素的对应关系时,可以使用数组作为查找 表。例如,我们有一个字符到其 ASCII 码的映射,可以将字符的 ASCII 码值作为索引,对应的元素存 放在数组中的对应位置。 ‧ 机器学习:神经网络中大量使用了向量、矩阵、张量之间的线性代数运算,这些数据都是以数组的形式 构建的。数组是神经网络编程中最常使用的数据结构。 现的是栈 + 队列的逻辑,因 此可以实现栈与队列的所有应用,并且更加灵活。 91 6. 散列表 6.1. 哈希表 「哈希表 Hash Table」通过建立键 key 与值 value 之间的映射,实现高效的元素查询。具体而言,我们向哈 希表输入一个 key ,则可以在 ?(1) 时间内获取对应的 value 。 以一个包含 ? 个学生的数据库为例,每个学生都有“姓名”和“学号”两项数据。假如我们希望实现“输入 就是找到 key 对应的桶,并在桶中获取 value 。 那么,如何基于 key 来定位对应的桶呢?这是通过「哈希函数 Hash Function」实现的。哈希函数的作用是 将一个较大的输入空间映射到一个较小的输出空间。在哈希表中,输入空间是所有 key ,输出空间是所有桶 (数组索引)。换句话说,输入一个 key ,我们可以通过哈希函数得到该 key 对应的键值对在数组中的存储位 置。0 码力 | 342 页 | 27.39 MB | 1 年前3
Hello 算法 1.1.0 Java版的算法性能。 Tip 如果你仍对复杂度的概念感到困惑,无须担心,我们会在后续章节中详细介绍。 复杂度分析为我们提供了一把评估算法效率的“标尺”,使我们可以衡量执行某个算法所需的时间和空间资 源,对比不同算法之间的效率。 复杂度是个数学概念,对于初学者可能比较抽象,学习难度相对较高。从这个角度看,复杂度分析可能不太 适合作为最先介绍的内容。然而,当我们讨论某个数据结构或算法的特点时,难以避免要分析其运行速度和 排序和搜索:数组是排序和搜索算法最常用的数据结构。快速排序、归并排序、二分查找等都主要在数 组上进行。 ‧ 查找表:当需要快速查找一个元素或其对应关系时,可以使用数组作为查找表。假如我们想实现字符到 ASCII 码的映射,则可以将字符的 ASCII 码值作为索引,对应的元素存放在数组中的对应位置。 ‧ 机器学习:神经网络中大量使用了向量、矩阵、张量之间的线性代数运算,这些数据都是以数组的形式 构建的。数组是神经网络编程中最常使用的数据结构。 他知道如何计算索书号,从而可以快速找到目标图书。 第 6 章 哈希表 hello‑algo.com 113 6.1 哈希表 哈希表(hash table),又称散列表,它通过建立键 key 与值 value 之间的映射,实现高效的元素查询。具体而 言,我们向哈希表中输入一个键 key ,则可以在 ?(1) 时间内获取对应的值 value 。 如图 6‑1 所示,给定 ? 个学生,每个学生都有“姓名”和“学号”两项数据。假如我们希望实现“输入一个0 码力 | 378 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0b5 Java版量下的算法性能。 � 如果你仍对复杂度的概念感到困惑,无须担心,我们会在后续章节中详细介绍。 复杂度分析为我们提供了一把评估算法效率的“标尺”,使我们可以衡量执行某个算法所需的时间和空间资 源,对比不同算法之间的效率。 复杂度是个数学概念,对于初学者可能比较抽象,学习难度相对较高。从这个角度看,复杂度分析可能不太 适合作为最先介绍的内容。然而,当我们讨论某个数据结构或算法的特点时,难以避免要分析其运行速度和 。快速排序、归并排序、二分查找等都主要在数 组上进行。 ‧ 查找表:当我们需要快速查找一个元素或者需要查找一个元素的对应关系时,可以使用数组作为查找 表。假如我们想要实现字符到 ASCII 码的映射,则可以将字符的 ASCII 码值作为索引,对应的元素存 放在数组中的对应位置。 ‧ 机器学习:神经网络中大量使用了向量、矩阵、张量之间的线性代数运算,这些数据都是以数组的形式 构建的。数组是神经网络编程中最常使用的数据结构。 他知道如何计算索书号,从而可以快速找到目标书籍。 第 6 章 哈希表 hello‑algo.com 109 6.1 哈希表 「哈希表 hash table」,又称「散列表」,其通过建立键 key 与值 value 之间的映射,实现高效的元素查询。具 体而言,我们向哈希表输入一个键 key ,则可以在 ?(1) 时间内获取对应的值 value 。 如图 6‑1 所示,给定 ? 个学生,每个学生都有“姓名”和“学号”两项数据。假如我们希望实现“输入一个0 码力 | 376 页 | 30.69 MB | 1 年前3
Hello 算法 1.0.0 Java版量下的算法性能。 � 如果你仍对复杂度的概念感到困惑,无须担心,我们会在后续章节中详细介绍。 复杂度分析为我们提供了一把评估算法效率的“标尺”,使我们可以衡量执行某个算法所需的时间和空间资 源,对比不同算法之间的效率。 复杂度是个数学概念,对于初学者可能比较抽象,学习难度相对较高。从这个角度看,复杂度分析可能不太 适合作为最先介绍的内容。然而,当我们讨论某个数据结构或算法的特点时,难以避免要分析其运行速度和 排序和搜索:数组是排序和搜索算法最常用的数据结构。快速排序、归并排序、二分查找等都主要在数 组上进行。 ‧ 查找表:当需要快速查找一个元素或其对应关系时,可以使用数组作为查找表。假如我们想实现字符到 ASCII 码的映射,则可以将字符的 ASCII 码值作为索引,对应的元素存放在数组中的对应位置。 ‧ 机器学习:神经网络中大量使用了向量、矩阵、张量之间的线性代数运算,这些数据都是以数组的形式 构建的。数组是神经网络编程中最常使用的数据结构。 他知道如何计算索书号,从而可以快速找到目标图书。 第 6 章 哈希表 hello‑algo.com 113 6.1 哈希表 「哈希表 hash table」,又称「散列表」,它通过建立键 key 与值 value 之间的映射,实现高效的元素查询。具 体而言,我们向哈希表中输入一个键 key ,则可以在 ?(1) 时间内获取对应的值 value 。 如图 6‑1 所示,给定 ? 个学生,每个学生都有“姓名”和“学号”两项数据。假如我们希望实现“输入一个0 码力 | 376 页 | 17.59 MB | 1 年前3
共 26 条
- 1
- 2
- 3













