java hashmap 的api_JAVA基础--JAVA API集合框架(ArrayList、HashSet、HashMap使用)

一、集合Collection

1. 集合介绍

变量:表示的内存中的一个空间,只能保存确定类型的单个数据

数组:表示的是内存中的多个连续的空间,这些空间中可以存储多个同类型的数据。

后期继续学习面向对象技术,我们在程序中开始创建对象,使用对象。当在程序中创建的多少越来越多的时候,我们就需要将这些对象也存储起来。

需要存储对象:肯定是需要容器。

变量:可以,要求这个变量必须是引用变量,但只能存储单个对象

数组:可以,但是它要求存储的对象个数是固定的。

字符串缓冲区:不可以,因为它中的数据最后都会被转成字符串。

Java中提供了另外一类容器:集合,它专门负责存储程序中的对象。

开发中使用频率最高的三个集合对象:

ArrayList:

HashSet:

HashMap:

集合是类容器:它也具备了容器最基本的操作方式:

增、删、改、查、判断、遍历。

在Java中设计的集合容器比较多,它们都可以存储对象,但是当对象被存储到这些容器中之后,容器会对其中的对象进行不同的处理。

学习集合的重点:知道每个集合的底层是怎么处理其中存储的对象。知道每个集合的底层数据结构。

由于集合容器太多,需要程序员知道每个集合自己的处理方式,不容易记忆以及使用。于是Java又对这些集合容器的共性操作行为进行的抽取和总结,最后给我们形成了一套所有集合容器都应该具备的基本的操作方式。

Java中定义Collection接口,这个接口中定义了所有集合的共性的操作规则。Java中的所有集合容器都是按照Collection中定义的规则做的实现,我们在开发中只要按照Collection接口中定义的规则,就能够轻易的去操作各个集合容器。

2.Collection接口介绍

e98909d3e601c78ab7f02efadc61409d.png

Collection层次结构 中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。JDK 不提供此接口的任何直接 实现:它提供更具体的子接口(如 Set 和 List)实现。此接口    通常用来传递 collection,并在需要最大普遍性的地方操作这些 collection。

Collection它是集合体系中的顶层接口。它下面有多个集合容器对象,有些集合可以存放重复的对象,有些不可以,有些可以保证存储的数据的顺序,有些则不可以保证。

Collection接口中定义了集合最共享的操作方式。

3. Collection中的方法介绍

原文:http://www.cnblogs.com/Kubility123/p/7627075.html

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

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

相关文章

dbunit java_java - 错误地抛出了Java DBUnit AmbiguousTableNameException - 堆栈内存溢出

我正在尝试DBUnit(2.6.0),我正在尝试导出我的完整数据库(PostgreSQL)。 但是抛出以下异常:线程“main”中的异常org.dbunit.database.AmbiguousTableNameException:FLYWAY_SCHEMA_HISTORY这是正确的行为,因为我有两个具有相同名称…

Idea项目中常见错误及笔记(Old)

1、Idea基础设置: File-->settings--> 1>修改字体:Font 2>修改编码格式:File Encodings(全部UTF-8,右下方复选框勾中--防止程序中的汉字转为ASCII码) 3>修改行号:Appearance:show line numbers show me…

java接口服务编排_GOKU API Gateway CE V3.1.0 发布:新增服务编排、配置版本管理等...

Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang 开发的微服务网关,能够实现高性能 HTTP API 转发、服务编排、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界…

maxcompute 2.0复杂数据类型之array

2019独角兽企业重金招聘Python工程师标准>>> 1. 含义 类似于Java中的array。有序、可重复。 2. 场景 什么样的数据,适合使用array类型来存储呢?这里列举了几个我在开发中实际用到的场景。 2.1 标签类的数据 为什么说标签类数据适合使用array类…

权限组件(6):权限分配的角色管理

效果图: 为了方便开发,先把中间件注释掉,要不还要在角色-权限表中添加对应关系。又因为二级菜单和面包屑导航需要中间件的变量,所以要在layout.html里面把这两个也注释掉。setting.py# rbac.middlewares.rbac.RbacMiddleware layo…

02-Django基础知识

一、内容回顾 1、web应用程序 2、HTTP协议 a、http协议特性 b、http请求格式 c、http响应格式 3、wsgiref模块 4、Django下载与简单应用 a、Django简介(MTV) b、下载django命令 c、创建项目命令 d、创建app应用 e、启动项目   二、今日概要 1、路由层&…

java解析上的jar包里的pom_Maven引入本地Jar包并打包进War包中的方法

1.概述在平时的开发中,有一些Jar包因为种种原因,在Maven的中央仓库中没有收录,所以就要使用本地引入的方式加入进来。2. 拷贝至项目根目录项目根目录即pom.xml文件所在的同级目录,可以在项目根目录下创建文件夹lib,如下…

java静态工厂方法模式_设计模式:简单工厂模式(静态工厂方法模式)

简单工厂的构成包括三个角色:1)抽象产品类2)具体产品类(继承抽闲产品类)3)工厂类(生产具体产品)具体代码实现1、抽象产品类/*** 抽象类*/public abstract class Car {/*** 产品抽象方法,将会由具体产品类实现*/public abstract void driving();}2、具体产…

Kibana中的Coordinate Map地图报索引错误的问题

今天做地图定位展示,展示的是ApacheWeb服务器的访问日志文件中的来源IP。但是中间出现了报错环节,说是索引不能匹配到geo_point类型,实在是不懂这是在说什么,后来在网站找了方法就解决了。主要报错如下: 报错信息&…

windows软链接的建立及删除

2019独角兽企业重金招聘Python工程师标准>>> 1.建立举例 # 建立d:develop链接目录,指向远程的目标服务器上的e盘的对应目录。 mklink /d d:\develop \\138.20.1.141\e$\develop# 建立d:develop链接目录,指向远程的目标服务器上的e盘的对应目录…

php原生类,反序列化之PHP原生类的利用

正文文章围绕着一个问题,如果在代码审计中有反序列化点,但是在原本的代码中找不到pop链该如何?N1CTF有一个无pop链的反序列化的题目,其中就是找到php内置类来进行反序列化。基础知识首先还是来回顾一下序列化中的魔术方法,下面也…

Spectral Bounds for Sparse PCA: Exact and Greedy Algorithms[贪婪算法选特征]

目录 概括Sparse PCA Formulation非常普遍的问题Optimality ConditionsEigenvalue Bounds算法代码概括 这篇论文,不像以往的那些论文,构造优化问题,然后再求解这个问题(一般都是凸化)。而是,直接选择某些特…

TikTok与环保:短视频如何引领可持续生活方式?

在数字时代,社交媒体平台扮演着塑造文化和价值观的关键角色。而TikTok,作为一款全球短视频平台,不仅塑造着用户的娱乐方式,还在悄然地引领着可持续生活方式的潮流。本文将深入探讨TikTok与环保之间的关系,分析短视频如…

Spring源码分析---Bean 的生命周期 03

来源:Spring 3. Bean 的生命周期 自定义一个 SpringBoot 的主启动类: SpringBootApplication public class A03Application {public static void main(String[] args) {ConfigurableApplicationContext context SpringApplication.run(A03Applicatio…

选择免费的SSL证书,还是付费的?

作为一个互联网文章作者,我会根据具体的使用场景和需求来选择SSL证书。通常情况下,如果是用于个人网站或者小型项目,我会倾向于选择免费的SSL证书,比如 JoySSL提供的免费证书。这样可以在不增加额外费用的情况下为网站提供安全的加…

静态HTTP与CDN:如何优化内容分发

大家好,今天我们来聊聊静态HTTP和CDN这对“黄金搭档”。没错,就是那个让你的网站内容像闪电一样传遍全球的CDN! 首先,我们来了解一下静态HTTP。它就像是那个老实可靠的邮差,每次都按时按点地把你的内容送到用户手中。…

第二十一章博客

计算机应用实现了多台计算机间的互联,使得它们彼此之间能够进行数据交流。网络应用程序就是在已连接的不同计算机上运行的程序,这些程序借助于网络协议,相互之间可以交换数据。编写网络应用程序前,首先必须明确所要使用的网络协议…

C++ boost planner_cond_.wait(lock) 报错1225

1.如下程序段 boost unique_lock doesn’t own the mutex: Operation not permitted 问题: 其中makePlan是一个线程。这里的unlock导致错误这个报错 boost unique_lock doesn’t own the mutex: Operation not permitted bool navigation::makePlan(){ //cv::named…

MySQL中如何快速定位占用CPU过高的SQL

作为DBA工作中都会遇到过数据库服务器CPU飙升的场景,我们该如何快速定位问题?又该如何快速找到具体是哪个SQL引发的CPU异常呢?下面我们说两个方法。聊聊MySQL中如何快速定位占用CPU过高的SQL。 技术人人都可以磨炼,但处理问题的思…

华为OD机试 - 多段线数据压缩(Java JS Python C)

在线OJ刷题 题目详情 - 多段线数据压缩 - Hydro 题目描述 下图中,每个方块代表一个像素,每个像素用其行号和列号表示。 为简化处理,多线段的走向只能是水平、竖直、斜向45度。 上图中的多线段可以用下面的坐标串表示:(2,8),(3,7),(3,6),(3,5),(4,4),(5,3),(6,2),(7,3),(…