java数组总结(精简版)

1.数组:

 (1)本身属于引用数据类型,可以作为集合的元素;
 (2)一旦被创建,长度就固定,既可以存储基本数据类型,也可以存储引用数据类型
 (3)存储同一种数据类型多个元素的集合。也可以看成是一个容器。
         1.1.数组的定义格式:(2种)
                    格式1:数据类型[]  数组名;int[] a:定义一个int类型的数组a变量。(推荐)
                    格式2:数据类型  数组名[];int  a[]:定义一个int类型的a数组变量。
                    注:这两种定义做完了,数组中是没有元素值的,是一个null数组
       1.2.数组的初始化:(2种)
                **要使用数组,必须先初始化!!!**
                  所谓初始化:就是为数组中数组元素分配内存空间,并为每个数组元素赋值
                  动态初始化:初始化时只指定数组长度,由系统为数组分配初始值;
                  1.2.1.动态初始化:数据类型[] 数组名=new 数据类型[数组长度]
                   int[] c = new int[3];//长度3,索引范围:[0,2]
                       c[0]=10;
	                   c[1]=20;
	                  c [2]=30;
                 **静态初始化:初始化时指定每个数据元素的初始值,由系统决定数组长度。(推荐使用)**
                   1.2.2.  静态初始化:数据类型[] 数组名={数组元素}
                      int c[] = {10,20,30};//长度:3,索引范围:[0,3]
       1.3.数组内存分配(2种)
                   主要使用的是栈内存和堆内存。
                  1.3.1.栈内存特点:
                       脱离了变量的作用域后数据用完就会释放掉
                       1.3.1.1.栈内存存储局部变量(在方法中定义或方法中声明的变量),变量的引用地址(系统随机分配)
                       1.3.1.2.int[] c 存放在了栈中,地址值为0x001,指向堆中的实例
                  1.3.2.堆内存特点:
                       堆内存存储new出来的东西,使用完毕后就变成了垃圾,但是并没有立即回收。  
       引用扩展:局部变量,成员变量,全局变量,静态变量
            1.1.成员变量:变量定义在类中方法外 ,存储在堆内存中    
                1.1.1成员变量分为:
                     1.1.1.1.静态属性:随类的存在而存在,是在类加载的初始化
                     1.1.1.2.非静态属性:随实例的属性存在而存在。
            1.2.局部变量:变量定义在方法中,存储在栈内存中      
                  1.2.1.局部变量不能加static,包括protected, private, public这些也不能加
                  1.2.2.局部编程必须在声明时初始化。    
            1.3.静态变量:变量定义在类中方法外,用static修饰,存储在于方法区即静态区
            1.4.全局变量:全局变量也称成员变量定义在类中方法外,用static final修饰,是创建对象的时候分配内存的
        成员变量和局部变量区别: 
            1. 成员变量可以不显式初始化,它们可以由系统设定默认值 ;局部变量没有默认值,所以必须设定初始赋值。
             2.成员变量存在于堆内存,局部变量存在于栈内存。
        注:方法(包括静态方法)中不能有静态变量,方法中存在的是局部变量,而不是静态变量。
               静态变量是定义在类中,方法体外面的!!!

明天总结集合(List,Set,Map)部分,今天总结如有问题,望大神指正!

猜你喜欢

转载自blog.csdn.net/qq591009234/article/details/89228901