Java当中的Array和Arrays的区别到底是什么?

weichuang002 2012-08-23 10:29:05
单数形式的Array和复数形式的Arrays其区别到底是什么? 为什么要弄出这两个容易搞混的概念来?
...全文
3447 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
孤雨 2012-08-24
  • 打赏
  • 举报
回复
Arrays是工具类 提供一下常用的静态方法。
walkman_22 2012-08-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
引用 3 楼 的回复:

Arrays是个工具类,像Collections


那么为什么要分Arrays和Collections? 既然都可以用来装对象,那么这两个概念的本质区别是什么?
[/Quote]

并不是都用来装对象的
Array 是装对象的,Arrays是操作数组对象的

打个比方,Array是图书,Arrays就是图书管理员,对图书进行各种操作

JAVA API中的定义:
This class contains various methods for manipulating arrays (such as sorting and searching). This class also contains a static factory that allows arrays to be viewed as lists.

该类包含了多种操作数组的方法(比如排序和搜索),并且包含一个静态工厂使得数组可以以数列形式展现.
sdojqy1122 2012-08-24
  • 打赏
  • 举报
回复
Arrays 是数组, Collections 是集合,LZ不会这两个概念是搞混淆了吧。
sffx123 2012-08-24
  • 打赏
  • 举报
回复
工具类跟具体类
_云_ 2012-08-24
  • 打赏
  • 举报
回复
Arrays是工具类 提供一下常用的静态方法;而Array是数组
hawkmsg 2012-08-24
  • 打赏
  • 举报
回复 2
2楼已经回答了Array和Arrays的区别,Array好比是种植出来的水果,Arrays则是对水果进行包装处理,可以制成水果罐头,也可以制成水果干。为什么弄出两个容易搞混的概念来?如果把Arrays类的方法都放到Array类里,那么Array类的职责太多了,可复用性就越小,另外,加剧了耦合性,如果一个职责变化,可能导致另一职责变化。
对于Collections,是接口,处理的除了List外,还有Map、Set等。
为啥呢 2012-08-24
  • 打赏
  • 举报
回复
Arrays是一个不符合OO思想的存在....
Firebirds 2012-08-24
  • 打赏
  • 举报
回复
一品堂 正解
zhaoming262350 2012-08-23
  • 打赏
  • 举报
回复
Array是一个经常表示数组,而Arrays是 java.util.Arrays是一个继承Object类,下面有自己的方法
public class Arraysextends Object此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。

除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出 NullPointerException。

此类中所含方法的文档都包括对实现 的简短描述。应该将这些描述视为实现注意事项,而不应将它们视为规范 的一部分。实现者应该可以随意替代其他算法,只要遵循规范本身即可。(例如,sort(Object[]) 使用的算法不必是一个合并排序算法,但它必须是稳定的。)

此类是 Java Collections Framework 的成员。

你可以查API文档
weichuang002 2012-08-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

Arrays是个工具类,像Collections
[/Quote]

那么为什么要分Arrays和Collections? 既然都可以用来装对象,那么这两个概念的本质区别是什么?
jijihahalala 2012-08-23
  • 打赏
  • 举报
回复
Arrays是个工具类,像Collections
brightyq 2012-08-23
  • 打赏
  • 举报
回复
java.lang.reflect.Array
此类提供了动态创建和访问 Java 数组的方法。

java.util.Arrays
此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。

二者有些区别,楼主看文档吧。
前者倾向于操作数组的单个元素,后者倾向于操作整个数组。
wsyangzuda 2012-08-23
  • 打赏
  • 举报
回复
一个是类

一个是方法 比如 Arrays.aslist()


为什么定义这两个规则,问问创世人吧

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧