到底叫 集合还是数组还是list还是列表?

1 总体上可以将数据结构分为数组和集合两种,而列表是一个泛指
数组:在Java中,数组是一种基本数据类型,可以用来存储同一类型的多个元素,数组的长度是固定的。例如:int[] arr = new int[10];List:List是一种有序的集合,可以存储重复的元素。Java中的List有多种实现,如ArrayList、LinkedList等。例如:List<String> list = new ArrayList<>();Set:Set是一种不允许重复元素的集合。Java中的Set也有多种实现,如HashSet、TreeSet等。例如:Set<String> set = new HashSet<>();Map:Map是一种键值对映射的集合,可以存储不同类型的元素。Java中的Map也有多种实现,如HashMap、TreeMap等。例如:Map<String, Integer> map = new HashMap<>();需要注意的是,列表(List)虽然通常会被翻译成“列表”这个词,但是在计算机科学中,它的意义并不限于此。有时候,列表还可以指代其它类型的数据结构,比如链表(Linked List)和栈(Stack)等。
数组:在Java中,数组是一种基本数据类型,可以用来存储同一类型的多个元素,
数组的长度是固定的。
例如:int[] arr = new int[10];List:List是一种有序的集合,可以存储重复的元素。Java中的List有多种实现,
如ArrayList、LinkedList等。例如:List<String> list = new ArrayList<>();Set:Set是一种不允许重复元素的集合。Java中的Set也有多种实现,
如HashSet、TreeSet等。例如:Set<String> set = new HashSet<>();Map:Map是一种键值对映射的集合,可以存储不同类型的元素。Java中的Map也有多种实现,
如HashMap、TreeMap等。例如:Map<String, Integer> map = new HashMap<>();需要注意的是,列表(List)虽然通常会被翻译成“列表”这个词,但是在计算机科学中,
它的意义并不限于此。有时候,列表还可以指代其它类型的数据结构,
比如链表(Linked List)和栈(Stack)等。
2 数组 --> 有序的,但长度是固定的->元素数量固定并且需要频繁访问,那么使用数组可能更合适
int[] intArray = {1, 2, 3, 4, 5};
String[] strArray = {"apple", "banana", "orange"};
double[] doubleArray = {1.2, 3.4, 5.6};
3 集合
3.1 list  --> 支持添加和删除元素,或者元素的数量不确定,就可以使用List类型
List<Integer> intList = new ArrayList<>();
intList.add(1);
intList.add(2);
intList.add(3);List<String> strList = new LinkedList<>();
strList.add("apple");
strList.add("banana");
strList.add("orange");List<Double> doubleList = new ArrayList<>();
doubleList.add(1.2);
doubleList.add(3.4);
doubleList.add(5.6);

3.2 set --> Set是一种不允许重复元素的集合

Set<Integer> intSet = new HashSet<>();
intSet.add(1);
intSet.add(2);
intSet.add(3);Set<String> strSet = new TreeSet<>();
strSet.add("apple");
strSet.add("banana");
strSet.add("orange");Set<Double> doubleSet = new HashSet<>();
doubleSet.add(1.2);
doubleSet.add(3.4);
doubleSet.add(5.6);

3.3 map ->键值对映射的集合

Map<String, Integer> strIntMap = new HashMap<>();
strIntMap.put("apple", 1);
strIntMap.put("banana", 2);
strIntMap.put("orange", 3);Map<Integer, String> intStrMap = new TreeMap<>();
intStrMap.put(1, "apple");
intStrMap.put(2, "banana");
intStrMap.put(3, "orange");Map<Double, String> doubleStrMap = new LinkedHashMap<>();
doubleStrMap.put(1.2, "apple");
doubleStrMap.put(3.4, "banana");
doubleStrMap.put(5.6, "orange");

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

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

相关文章

CenOS设置启动级别

背景知识 init一共分为7个级别&#xff0c;这7个级别的所代表的含义如下 0&#xff1a;停机或者关机&#xff08;千万不能将initdefault设置为0&#xff09;1&#xff1a;单用户模式&#xff0c;只root用户进行维护2&#xff1a;多用户模式&#xff0c;不能使用NFS(Net File S…

第2集丨webpack 江湖 —— 创建一个简单的webpack工程demo

目录 一、创建webpack工程1.1 新建 webpack工程目录1.2 项目初始化1.3 新建src目录和文件1.4 安装jQuery1.5 安装webpack1.6 配置webpack1.6.1 创建配置文件&#xff1a;webpack.config.js1.6.2 配置dev脚本1.7 运行dev脚本 1.8 查看效果1.9 附件1.9.1 package.json1.9.2 webpa…

Redis - Bitmap

什么是Bitmap 操作String数据类型的key所存储的字符串指定偏移量上的位&#xff0c;返回原位置的值优点&#xff1a; 节省空间通过一个bit位来表示某个元素对应的值或者状态&#xff0c;其中key就是对应元素的值。实际上8个bit可以组成一个Byte,所以是及其节省空间的效率高se…

ReactRouterv5在BrowserRouter和HashRouter模式下对location.state的支持

结论&#xff1a;HashRouter不支持location.state 文档&#xff1a;ReactRouter v5 从文档可看到history.push()方法支持2个参数&#xff1a;path, [state] state即是location.state&#xff0c;常用于隐式地传递状态参数 但文档未提的是&#xff0c;仅适用于BrowserRouter&am…

C++-Rust-一次性掌握两门语言

C-Rust-一次性掌握两门语言 简介特色数据类型声明常量、变量判断与循环函数抽象化的对象&#xff1a;类与接口枚举模板与泛型Lambda匿名函数表达式 简介 本文主要是通过介绍C和Rust的基础语法达成极速入门两门开发语言。 C是在C语言的基础之上添加了面向对象的类、重载、模板等…

《面试1v1》Kafka的架构设计是什么样子

&#x1f345; 作者简介&#xff1a;王哥&#xff0c;CSDN2022博客总榜Top100&#x1f3c6;、博客专家&#x1f4aa; &#x1f345; 技术交流&#xff1a;定期更新Java硬核干货&#xff0c;不定期送书活动 &#x1f345; 王哥多年工作总结&#xff1a;Java学习路线总结&#xf…

百度开发者平台API地理编码,根据地址获取经纬度

地理编码 | 百度地图API SDK (baidu.com) 原始csv # encoding:utf-8 import requests import csv import json # 接口地址 url "https://api.map.baidu.com/geocoding/v3"# 此处填写你在控制台-应用管理-创建应用后获取的AK ak "XXXXXXX"# 创建CSV文件并…

04-树6 Complete Binary Search Tree

思路&#xff1a; 先排序 用数组建一棵空树 中序遍历填数 顺序输出即为层次遍历

企业电子招投标采购系统源码之-java spring cloud+spring boot

​ 信息数智化招采系统 服务框架&#xff1a;Spring Cloud、Spring Boot2、Mybatis、OAuth2、Security 前端架构&#xff1a;VUE、Uniapp、Layui、Bootstrap、H5、CSS3 涉及技术&#xff1a;Eureka、Config、Zuul、OAuth2、Security、OSS、Turbine、Zipkin、Feign、Monitor、…

PC音频框架学习

1.整体链路 下行播放&#xff1a; App下发音源→CPU Audio Engine 信号处理→DSP数字信号处理→Codec DAC→PA→SPK 上行录音&#xff1a; MIC拾音→集成运放→Codec ADC→DSP数字信号处理→CPU Audio Engine 信号处理→App 2.硬件 CPU PCH DSP(可选) Codec PA SPKbox MIC…

【libevent】http客户端3:简单封装

LibEventHttp: 适用于简单的http请求 LibEventHttp/* Copyright (c) MediaArea.net SARL. All Rights Reserved.** Use of this source code is governed by a BSD-style license that can* be found in the License.html file in the root of the source tree.*///--------…

Ansible安装部署与应用

文章目录 一、ansible简介二、ansible 环境安装部署三、ansible 命令行模块3.1 command 模块3.2 shell 模块3.3 cron 模块3.4 user 模块3.5 group 模块3.6 copy 模块3.7 file 模块3.8 hostname 模块3.9 ping 模块3.10 yum 模块3.11 service/systemd 模块3.12 script 模块3.13 m…

OpenCV DNN模块推理YOLOv5 ONNX模型方法

文章目录 概述1. 环境部署YOLOv5算法ONNX模型获取opencv-python模块安装 2.关键代码2.1 模型加载2.2 图片数据预处理2.3 模型推理2.4 推理结果后处理2.4.1 NMS2.4.2 score_threshold过滤2.4.3 bbox坐标转换与还原 3. 示例代码(可运行)3.1 未封装3.2 封装成类调用 概述 本文档主…

latex论文----写作代码

一般来说论文机构会给定latex模板代码&#xff0c;我们只需要知道怎么写就行&#xff0c;格式机构都给你调好了 1 各类标题 section是最大的标题&#xff0c;后边每一级小标题&#xff0c;都在前边加个sub就行 \section{Method} \subsection{Dataset} \subsubsection{Dataset…

Mac 系统钥匙串证书不受信任

Mac 系统钥匙串证书不受信任 解决办法 通过尝试安装 Apple PKI 的 Worldwide Developer Relations - G4 (Expiring 12/10/2030 00:00:00 UTC) 解决该异常问题 以上便是此次分享的全部内容&#xff0c;希望能对大家有所帮助!

【图论】LCA(倍增)

一.LCA介绍 LCA通常指的是“最近共同祖先”&#xff08;Lowest Common Ancestor&#xff09;。LCA是一种用于解决树或图结构中两个节点的最低共同祖先的问题的算法。 在树结构中&#xff0c;LCA是指两个节点的最近层级的共同祖先节点。例如&#xff0c;考虑一棵树&#xff0c;…

element-ui form表单的动态rules校验

在vue 项目中&#xff0c;有时候可能会用到element-ui form表单的动态rules校验&#xff0c;比如说选择了哪个选项&#xff0c;然后动态显示或者禁用等等。 我们可以巧妙的运用element-ui form表单里面form-item想的校验规则来处理&#xff08;每一个form-item项都可以单独校验…

Elasticsearch-倒排索引

Elasticsearch和Lucene的关系 Lucene 是一个开源、免费、高性能、纯 Java 编写的全文检索引擎&#xff0c;可以算作是开源领域最好的全文检索工具包。ElasticSearch 是基于Lucene实现的一个分布式、可扩展、近实时性的高性能搜索与数据分析引擎。 Lucene索引层次结构 Lucene的…

WPF实战学习笔记30-登录、注册服务添加

登录、注册服务添加 添加注册数据类型添加注册UI修改bug UserDto的UserName更改为可null类型Resgiter 添加加密方法修改控制器 添加注册数据类型 添加文件MyToDo.Share.Models.ResgiterUserDto.cs using System; using System.Collections.Generic; using System.Linq; us…

TimescaleDB时序数据库初识

注&#xff1a;本文翻译自https://legacy-docs.timescale.com/v1.7/introduction TimescaleDB是一个开源时间序列数据库&#xff0c;针对快速摄取和复杂查询进行了优化。它说的是“完整的SQL”&#xff0c;因此像传统的关系数据库一样易于使用&#xff0c;并且以以前为NoSQL数…