跟着狂神学Java:数组(上)
作者:互联网
一、数组的声明和创建
package com.shao.Arrays;
public class arrayDemo01 {
public static void main(String[] args) {
int[] nums;//数组的声明
nums = new int[5];//数组的创建,分配内存
nums[0]=0;
nums[1]=1;
nums[2]=2;
nums[3]=3;
nums[4]=4;
//计算所有元素之和
int sum = 0;
for (int i = 0; i < nums.length; i++) {
sum+=nums[i];
}
System.out.println(sum);
}
}
二、3种初始化以及内存分析
三种初始化:
-
静态初始化
-
动态初始化
-
默认初始化:数组是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量同样的方式被隐式初始化。
package com.shao.Arrays;
public class ArrayDemo02 {
public static void main(String[] args) {
//静态初始化,创建+赋值
int[] a = {1,2,3,4,5};
System.out.println(a[4]);
//动态初始化,包含默认初始化
int[] b =new int[10];
System.out.println(b[4]);
}
}
Java内存:
-
堆:存放new的对象和数组
可以被所有线程共享,不会存放别的对象引用
-
栈:存放基本变量类型(会包含这个基本类型的具体数值)
引用对象的变量(会存放这个引用在堆里面的具体地址)
-
方法区:可以被所有线程共享
包含了所有的class和static变量
三、数组边界
-
数组下标的合法区间:[0,length-1],如果越界就会报错
-
数组是相同数据类型(可以为任意一种类型)的有序集合
-
数组也是对象,数组元素相当于对象的成员变量
-
数组长度是确定的,不可变的,如果越界,则报异常:ArrayIndexOutOfBoundsException
标签:初始化,Java,变量,nums,int,数组,public,神学 来源: https://blog.csdn.net/m0_59405551/article/details/122354853