当前位置:首页>开发>正文

为什么数组名必须是常量

2023-06-27 15:43:38 互联网 未知 开发

 为什么数组名必须是常量

为什么数组名必须是常量?

因为数组是一种值类型的变量,而不是引用类型,如:a[0]直接对应的是a[0]的值,而不是一个地址,因此这个名字不能是变量,如:int a[]=new a[i]这样是错误的,必须给出值的具体长度。再如一个集合类则不同,虽然使用起来和数组一样,但其实际是引用类型的,因此我们可以动态的向集合类插入一个对象,不用考虑这个类型的长度问题而且还可以使用集合类的排序等方法,其实如果楼主学过C和数据结构的话,就会知道集合类之所以能够完成数组的功能,其实就是一个链表,而集合类则是对这个链表进行封装。数组因为其本身不是引用类型,所以不能够对地址进行引用操作,所以数组名只能是常量,可以把它理解为一个同一种类型常量的容器。

最新文章