Java 的数组要求所有的数组元素具有相同的数据类型。因此,在一个数组中,数组元素的类型是唯一的,即一个数组里只能存储一种数据类型的数据,而不能存储多种数据类型的数据。

因为 Java 语言是面向对象的语言,而类与类之间可以支持继承关系(从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为),这样可能产生一个数组里可以存放多种数据类型的假象。例如有一个水果数组,要求每个数组元素都是水果,实际上数组元素既可以是苹果,也可以是香蕉(苹果、香蕉都继承了水果,都是一种特殊的水果),但这个数组的数组元素的类型还是唯一的,只能是水果类型。

一旦数组的初始化完成,数组在内存中所占的空间将被固定下来,因此数组的长度将不可改变。即使把某个数组元素的数据清空,但它所占的空间依然被保留,依然属于该数组,数组的长度依然不变。

Java 的数组既可以存储基本类型的数据,也可以存储引用类型的数据,只要所有的数组元素具有相同的类型即可。

值得指出的是,数组也是一种数据类型,它本身是一种引用类型。例如 int 是一个基本类型,但 int[](这是定义数组的一种方式)就是一种引用类型了。

int[] 是一种类型吗?怎么使用这种类型呢?

没错,int[] 就是一种数据类型,与 int 类型、String 类型相似,一样可以使用该类型来定义变量,也可以使用该类型进行类型转换等。使用 int[] 类型来定义变量、进行类型转换时与使用其他普通类型没有任何区别。int[] 类型是一种引用类型,创建 int[] 类型的对象也就是创建数组,需要使用创建数组的语法。

1.6 Java数组也是一种数据类型相关推荐

  1. java中数组的返回值是什么类型_Java数组也是一种数据类型

    Java 的数组要求所有的数组元素具有相同的数据类型.因此,在一个数组中,数组元素的类型是唯一的,即一个数组里只能存储一种数据类型的数据,而不能存储多种数据类型的数据.因为 Java 语言是面向对象的 ...

  2. Java数组定义的三种方式

    Java数组定义的三种方式 第一种:先声明,分配空间,赋值 int[] arr; //先声明arr=new int[10]; //分配空间fo0(int i=0;i<10;i++){arr[i] ...

  3. java数组去重方法是,java数组去重的两种方法

    我们对于数组元素的使用,有时候在创建数组的初期,并没有考虑过元素的重复问题.当我们想要不重复元素的数组时,就要再进行一步去重的工作.数组的去重有两种方法可以实现,一个是循环比较,另一个是hashSet ...

  4. java反转数组_Java中如何将数组反转?Java数组反转的2种方法(代码示例)

    数组操作Java数组如何反转输出?下面本篇文章就给大家介绍2种在java中实现数组反转的简单方法.有一定的参考价值,希望对大家有所帮助.[视频教程推荐:java教程] 方法一:使用循环,交换数组中元素 ...

  5. java 数组写法_java书写、数据类型、数组定义

    这里只记录java与php.javascript不同的地方,相同的地方就不赘述了. 1.java文件源码为以.java为后缀的文件,字节码文件是以.class为后缀的文件. 2.写好一个java源码之 ...

  6. java数组初始化的三种方式

    //第一种 int[] is= new int[3]; is[0]=1; is[1]=2; is[2]=3; //第二种 int[] is2= {1,2,3}; //第三种 int[] is3= ne ...

  7. java 数组效率_java数组复制的四种方法效率对比

    有关数组的基础知识,有很多方面,比方说初始化,引用,遍历,以及一维数组和二维数组,今天我们先看看数组复制的有关内容. 来源于牛客网的一道选择题: JAVA语言的下面几种数组复制方法中,哪个效率最高? ...

  8. java hashmap 去重_java数组去重的两种方法

    我们对于数组元素的使用,有时候在创建数组的初期,并没有考虑过元素的重复问题.当我们想要不重复元素的数组时,就要再进行一步去重的工作.数组的去重有两种方法可以实现,一个是循环比较,另一个是hashSet ...

  9. Java数组概述和定义

    1.数组概述和定义格式说明 为什么要有数组(容器): 为了存储同种数据类型的多个值 数组概念: 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数据类型,也可以存储引 ...

最新文章

  1. iOS网络-NSURLSessionDataTask大文件离线断点下载
  2. 成功解决在excel表格中仅在某列内插入一个空白单元格,使其下部的数据整体下移一格
  3. python两数相加代码_一边学编程,一边学语数外,用python编程全排列10以内两数加法...
  4. 可怕!公司部署了一个东西,悄悄盯着你···
  5. mysql 如何清除sql缓存
  6. C语言及程序设计进阶例程-17 认识链表
  7. Excel--Solver安装和使用
  8. hello github
  9. 【181220】VC++ 简易的人工智能模型源程序源代码
  10. SCRT同网段的ping不通
  11. 计算机说课稿模板小学数学,精选小学数学万能说课稿模板
  12. python四分位数_Python:获取四分位数的数组索引
  13. Tapestry入门
  14. Python装逼神器,Python实现一键批量扣图
  15. 关于720vr 全景平台 全景图片制作系统 仿720云需要注意的坑 诚意贴
  16. 京东单品页前端开发那些不得不说的事儿 1
  17. iOS逆向学习之 Mac 登录到 iPhone
  18. 转:拥抱挣扎:创造组织的同时,也创造了崭新的自我
  19. 收货地址的JavaScript城市三级联动【干货拿走不谢!>_<】
  20. JAVA 调用打印机输出PDF文件

热门文章

  1. 成功解决explicit device specific/device:GPU:0' because no supported kernel for GPU devices is available.
  2. auto-sklearn简介
  3. OS_CORE.C(6)
  4. hibernate映射简单实例
  5. Windows Defender还原误删文件
  6. BZOJ3075[USACO 2013 Mar Gold 3.Necklace]——AC自动机+DP
  7. Asp.Net Core异常处理整理
  8. unity UV 动画
  9. .GRIDVIEW奇偶行变色
  10. 在IAR下如何查看工程的堆栈(STM32)