Array和ArrayList不同
Employee[] array = new Employee[10];
ArrayList<Employee> staff = new ArrayList<>();
| 不同 | Array | ArrayList | 利弊 |
| 长度是否可变 | 长度不可变array的长度一直为10 | 长度可变,通过add、remove添加或删除元素。但是在操作过程中是通过自动创建一个更大的数组,复制小的数组中的值到打的数组中,实现数组长度可变. | |
|
new ArrayList<>(100)和 new Employee[100] |
new Employee[100]数组长度一直为100 | new ArrayList<>(100)代表创建一个长度为100的数组,但是仍然可以在他的基础上进行添加或者删除。之所以添加这个即wnsureCapacity(100)方法,是为了在100个之内是,不再需要重复的复制原来的对象到一个更大的数组中去,节省了内存的使用,加快了速度。当你不需要这么多空闲的内存时,可以调用trimToSize()方法将长度改变为当前实际存在的对象的长度,垃圾回收系统会恢复额外的内存。 | < |
|
staff.size和array.length() |
两者一样,都是代表实际存在的对象的长度。 |
||
|
值得存取方法 |
通过索引array[i]可以进行很方便的存取 |
需要通过set和get方法,即staff.set(i,harry),staff.get(i)来存取。因为ArrayList类并不是java语言的一部分,它只是一个标准库中工具类(被某人所写) | > |
Array和ArrayList不同的更多相关文章
- C#中数组Array、ArrayList、泛型List<T>的比较
在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序 ...
- Array和ArrayList互相转换
class Order{ public string orderId; public string orderName; public decimal orderPrice; } public cla ...
- Array和ArrayList的异同点【转】
相信数组是大家在编程最常使用的,不论任何语言都存在数组这样的数据结构,由于C#语言是完全面向对象的,所以在C#中的数组也是对象,实际上就是Array类的实例,Array类的使用可以说是使用最频繁的,只 ...
- Array和ArrayList的区别与联系
博主今天去了一个java的实习面试,发现有好多java最基础的数据结构对于博主来说反而感到陌生,在面试官问一些常见的例如HashMap这样的数据结构,博主能回答的头头是道,但是在问到Array和Arr ...
- Array和ArrayList的异同点
Array和ArrayList的异同点 1.不同点: (1)Array只能存储同构的对象, ArrayList可以存储异构的对象 (2)在CLR托管对中的存放方式中,Array是始终是连续存放的, A ...
- C# array与arraylist区别及获取sql字段名
array与arraylist的区别: 1. Array 的容量是固定的,而 ArrayList 的容量是根据需要自动扩展的.如果更改了 ArrayList.Capacity 属性的值,则自动进行内 ...
- Array和ArrayList有什么区别?
Array和ArrayList的区别: 1.Array可以包含基本数据类型和对象类型,而ArrayList只能包含对象类型 2.Array有固定的大小,而ArrayList是动态变化的. 3.Arra ...
- C#数组之 []、List、Array、ArrayList应用
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- C#中[] 、List、Array、ArrayList等数据结构的差异简述
[] 是针对特定类型.固定长度的. List 是针对特定类型.任意长度的. Array 是针对任意类型.固定长度的. ArrayList 是针对任意类型.任意长度的. Array 和 ArrayLis ...
- Java面试题之Array和ArrayList的区别
Array和ArrayList的区别: 1.Array类型的变量在声明的同时必须进行实例化(至少得初花数组的大小),而ArrayList可以只是先声明: 2.Array始终是连续存放的:而ArrayL ...
随机推荐
- 显示日历的指令:cal
1.显示日历的指令:cal (1)参数: (2)实例:
- 003-hive安装
http://www.aboutyun.com/thread-6902-1-1.html http://www.aboutyun.com/thread-7374-1-1.html
- 用PE系统安装原版XP
方法:直接运行Winnt32程序进行XP原版系统安装. [1].在PE系统中将XP SP3系统镜像ISO文件从U盘上复制到硬盘的非系统分区后,用PE所带WinRAR程序将该ISO镜像中的I386 ...
- Cartographer源码阅读(2):Node和MapBuilder对象
上文提到特别注意map_builder_bridge_.AddTrajectory(x,x),查看其中的代码.两点: 首先是map_builder_.AddTrajectoryBuilder(...) ...
- JVM调优之jstack找出最耗cpu的线程、定位代码
jstack可以定位到线程堆栈,根据堆栈信息我们可以定位到具体代码,所以它在JVM性能调优中使用得非常多.下面我们来一个实例找出某个Java进程中最耗费CPU的Java线程并定位堆栈信息,用到的命令有 ...
- Gradle全局变量定义及引用
在Project的build.gradle脚本中定义一些全局变量 ext { compileSdkVersion = 21 buildToolsVersion = "24.0.1" ...
- hash值重写,就是以自己定义的规则来显示hash值
未重写hashCode值 重写hashCode后的值
- Tomcat部署及优化
一.Tomcat安装部署 一.安装jdk和Tomcat 1.上传jdk和Tomcat mkdir -p /opt/tools/ /application ##jdk:jdk-8u131 tomcat: ...
- Linux下solr集群搭建
第一步:创建四个tomcat实例.每个tomcat运行在不同的端口.8180.8280.8380.8480 第二步:部署solr的war包.把单机版的solr工程复制到集群中的tomcat中. 第三步 ...
- Mongodb 基础 查询表达式
数据库操作 查看:show dbs; 创建:use dbname; // db.createCollection('collection_name'); 隐式创建,需要创建的数据库中有表才表示创 ...