黑马程序员技术交流社区

标题: Java数组 [打印本页]

作者: chengaq0    时间: 2015-12-16 23:15
标题: Java数组
1.什么是数组?
   答:就是存储同一种数据类型0个或多个元素的集合,可以看成是一个容器。

2.什么是数组的初始化?
    答:为数组开辟连续的内存空间,并为每个元素赋予值。
            数组的初始化又分为静态初始化和动态初始化。
            静态初始化是指给出初始化值,由系统决定长度。
            动态初始化是指只给定长度,由系统给定初始化值。

3.数组的基本格式:
           数据类型[]   数组名 = new 数据类型[数组的长度];  //动态初始化
           数据类型[]  数组名  = new 数据类型[]{元素1, 元素2, ...};  //静态初始化
           数据类型[]  数组名  = {元素1, 元素2, ...};  //静态初始化简化,同上

   下图为创建数组的几种方式

4.要了解数组就要知道数组的内存结构
       : 存储局部变量
       : 存储new出来的数组或对象
       方法区:  .class文件都加载到该区域
       本地方法区: 和系统相关
       寄存器: 给CPU使用
       学习数组阶段主要了解堆和栈
下面是一维数组的内存图

5.上面讲的都是一维数组,那什么是二维数组,多维数组呢?
    答:二维数组就是维数最少的多维数组。多维数组除了最内层存的是值之外,其他层存的都是地址值,也就是引用地址.


二维数组内存图

6.数组与集合有什么区别?
   答:A.数组:只能存放相同类型的数据,可以是基本数据类型,也可以是引用数据类型。
                           基本数据类型存储的是值,引用数据类型存储的的地址值。
          B.集合:只能存放引用数据类型的数据,如果存入的是基本数据类型,那么就会自动
                          装箱成引用数据类型。




作者: 雨来    时间: 2015-12-16 23:32
总结的不错,大大地好!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2