黑马程序员技术交流社区

标题: 数组 [打印本页]

作者: 934792834    时间: 2018-1-29 13:47
标题: 数组
打印位上是5的数每五个一行

Random产生随机数
r.nextInt(长度)+从哪开始

break 仅对一个循环有效--如果存在循环嵌套--只能跳出一个循环

===========================================  
           数组
存储//同一种数据类型//的多个元素的容器

格式:
int[] arr;//阿里巴巴规范  //变量名是 arr  类型是 int数组
int arr[];类型是数组  变量名是arr数组

初始化:
为数组开辟空间,并为每个元素赋初始值
动态初始化:指定长度  int[] arr=new int[8];  长度为8   默认值为0
静态初始化:          int[] arr=new int[]{1,2,3,4,5,6};


new 为数组申请内存分配--开辟空间

java 内存分布(内存分布是随机的--数组名的地制值不是每次都相同)

栈(局部变量--定义在方法中的变量)   堆(对象--实体-new出来的东西)    方法区   本地方法区(和系统相关)   寄存器(CPU使用)


char 默认值 '\u0000'  空字符

堆:
A:
B:
C:堆内存的数据使用完毕不会立即回收-------没人指向它的时候---方法结束时
提前回收  arr=null------------没有人指向它





栈:(局部变量--方法中的变量或者()中的)
数据使用完毕立即回收


引用类型放的是地制值
基本数据类型放的是   实际数据


索引指的是位移单位  
首元素和0索引  表示的相同   



java中有自动回收机制   方法

================================================

地制值相同 指向同一个  堆内存空间(地址)
一个的改变会影响另一个
以最后一个改变  的 为准


int[] arr=new int[3];
      arr=new int[4];//上面的被回收--因为指向没有了

new  一次就有一个对象


内存的单位是16进制
静态数组的简化格式  只能在


int[] arr=new int[num];长度可以是变量

空指针异常    NullPointerException
arr=null;

System.out.println(arr[1]);//=null后数组已经不指向堆内存






二维数组实质上是个一维数组
二维数组的元素是一维数组的地制值



















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