A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fmi110 高级黑马   /  2015-8-16 21:55  /  183 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

sa
  1. 16、数组的定义:
  2.                 概念:同一类型数据的集合。一个容器

  3.                 格式1        元素类型[] 数组名 = new 元素类型[长度];
  4.                                         int[] arr = new int[3];
  5.                                         定义了一个数组,但是元素未指定具体值(有默认值)
  6.                
  7.                                                         class Test
  8.                                                         {
  9.                                                                 public static void main(String[] sd)
  10.                                                                 {
  11.                                                                         int[] arr = new int[3];
  12.                                                                         for(int i:arr)
  13.                                                                                 System.out.print(i+" ");
  14.                                                                         System.out.println();
  15.                                                                 }
  16.                                                         }
  17.                                                         输出结果: 0 0 0
  18.                                                         String[] 默认值是 null
  19.                                                         char[]   默认值是 \u0000(字符串结束标志)
  20.                
  21.                 格式2        元素类型[] 数组名 = new 元素类型[]{元素1,元素2,...};
  22.                                         int[] arr = new int[]{1,2,3};
  23.                                         定义容器,存储具体的数据,此时,不能再指定数组长度,否则报错

  24.                 java程序在运行是,需要在内存中分配空间。为了提高运算效率,又对空间进行了
  25.                 不同区域的划分,每一片区域都有特定的处理数据方式和内存管理方式。

  26.                         内存的划分:
  27.                                 1 寄存器
  28.                                 2 本地方法去
  29.                                 3 方法区
  30.                                 4 栈内存:用于存储局部变量,当变量所属的作用域一旦结束,所占空间会自动释放。
  31.                                 5 堆内存:数组和对象,通过new建立的实例都存放在堆内存中
  32.                                 每一个实体都有内存地址值。
  33.                                 实体中的变量都有默认初始化值,根据类型的不同而不同。 整数类型是0,小数类型是0.0或0.0f,boolean类
  34.                                 型是false,char类型是'\u0000'。
  35.                                 如果将数组的引用实体设置为null,也就是实体不再被使用,那么会在不确定的时间内被垃圾回收器回收。

  36.                 PS:1 空指针异常(NullPointerException):当引用型变量没有指向任何实体时,用其操作实体,就会发生该异常
  37.                                 String[] line = null;
  38.                                 System.out.println(line[0]);//NullPointerException
  39.                         2 直接打印数组的引用变量,输出的是数组初始地址的哈希值。
  40.                                         class Test
  41.                                         {
  42.                                                 public static void main(String[] sd)
  43.                                                 {
  44.                                                         int[] arr = new int[2]        ;
  45.                                                         System.out.println(arr);
  46.                                                 }
  47.                                         }

  48.                                         输出结果: [I@659e0bfd
  49.                                         "[I"表示的是int类型数组,"@"后面的内容表示数组初始地址的哈希值
复制代码


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马