基于Java中的数值和集合详解
发布时间 - 2026-01-11 02:26:18 点击率:次数组array和集合的区别:

(1) 数值是大小固定的,同一数组只能存放一样的数据。
(2) java集合可以存放不固定的一组数据
(3) 若程序事不知道究竟需要多少对象,需要在空间不足时自动扩增容量,则需要使用容器类库,array不适用
数组转换为集合:
Arrays.asList(数组)
示例:
int[] arr = {1,3,4,6,6}; Arrays.asList(arr); for(int i=0;i<arr.length;i++){ System.out.println(arr[i]); }
集合转换为数组:
集合.toArray();
示例:
List list = new ArrayList(); list.add("a"); list.add("b"); list.toArray(); System.out.println(list.toString());
一、集合的体系结构:
List、Set、Map是这个集合体系中最主要的三个接口。 List和Set继承自Collection接口。 Map也属于集合系统,但和Collection接口不同。
Set不允许元素重复。HashSet和TreeSet是两个主要的实现类。Set 只能通过游标来取值,并且值是不能重复的。
List有序且允许元素重复。ArrayList、LinkedList和Vector是三个主要的实现类。 ArrayList 是线程不安全的, Vector 是线程安全的,这两个类底层都是由数组实现的 LinkedList 是线程不安全的,底层是由链表实现的
Map 是键值对集合。其中key列就是一个集合,key不能重复,但是value可以重复。 HashMap、TreeMap和Hashtable是Map的三个主要的实现类。 HashTable 是线程安全的,不能存储 null 值 HashMap 不是线程安全的,可以存储 null 值
二、List和ArrayList的区别
1.List是接口,List特性就是有序,会确保以一定的顺序保存元素。
ArrayList是它的实现类,是一个用数组实现的List.
Map是接口,Map特性就是根据一个对象查找对象.
HashMap是它的实现类,HashMap用hash表实现的Map,就是利用对象的hashcode(hashcode()是Object的方法)进行快速散列查找。(关于散列查找,可以参看<<数据结构>>)
2.一般情况下,如果没有必要,推荐代码只同List,Map接口打交道。
比如:List list = new ArrayList();
这样做的原因是list就相当于是一个泛型的实现,如果想改变list的类型,只需要:
List list = new LinkedList();//LinkedList也是List的实现类,也是ArrayList的兄弟类
这样,就不需要修改其它代码,这就是接口编程的优雅之处.
另外的例子就是,在类的方法中,如下声明:
private void doMyAction(List list){}
这样这个方法能处理所有实现了List接口的类,一定程度上实现了泛型函数.
3.如果开发的时候觉得ArrayList,HashMap的性能不能满足你的需要,可以通过实现List,Map(或者Collection)来定制你的自定义类.
以上这篇基于Java中的数值和集合详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# java
# 集合
# Java中对List集合的常用操作详解
# java集合求和最大值最小值示例分享
# java中List集合及其遍历详解
# java集合遍历的几种方式总结及详细比较
# 是一个
# 是由
# 给大家
# 转换为
# 不安全
# 实现了
# 就不
# 这就是
# 之处
# 这两个
# 数据结构
# 可以通过
# 希望能
# 这样做
# 自定义
# 只需要
# 最主要
# 这篇
# 小编
# 要使
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Android okhttputils现在进度显示实例代码
linux写shell需要注意的问题(必看)
如何在不使用负向后查找的情况下匹配特定条件前的换行符
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出
香港服务器租用费用高吗?如何避免常见误区?
如何实现javascript表单验证_正则表达式有哪些实用技巧
如何用虚拟主机快速搭建网站?详细步骤解析
零服务器AI建站解决方案:快速部署与云端平台低成本实践
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何获取免费开源的自助建站系统源码?
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
Firefox Developer Edition开发者版本入口
如何在阿里云虚拟主机上快速搭建个人网站?
如何在腾讯云免费申请建站?
如何基于PHP生成高效IDC网络公司建站源码?
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何快速搭建个人网站并优化SEO?
如何用PHP快速搭建高效网站?分步指南
Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践
Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录
Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】
如何用搬瓦工VPS快速搭建个人网站?
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
网站制作报价单模板图片,小松挖机官方网站报价?
laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
node.js报错:Cannot find module 'ejs'的解决办法
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】
jquery插件bootstrapValidator表单验证详解
什么是javascript作用域_全局和局部作用域有什么区别?
Laravel怎么上传文件_Laravel图片上传及存储配置
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
Laravel观察者模式如何使用_Laravel Model Observer配置
简历在线制作网站免费版,如何创建个人简历?
深圳网站制作平台,深圳市做网站好的公司有哪些?
如何打造高效商业网站?建站目的决定转化率
Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】
iOS UIView常见属性方法小结
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
如何有效防御Web建站篡改攻击?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
C#如何调用原生C++ COM对象详解

