Ⅰ java数组初始化,这三种方式有什么区别
三种初始化完全没区别,纯粹看个人习惯
Ⅱ java数组初始化问题怎么解决
数组名加上下标可以表示数组元素。数组的第一个元素是下标为O的元素,例如points[0]。最后一个元素的下标为length一1,如points[points.1ength一1]。
当创建一个数组时,每个元素都被初始化。如前面创建的字符数组s,它的每个值被初始化为O(\0000)。而数组points的每个值被初始化为null,表明它还没指向真正的Point对象。在赋值语句points[o]= New Point();后,系统创建一个真正的Point对象,并让数组的第一个元素指向它。
注意:包括数组元素在内的所有变量的初始化.从系统安全角度看都是必不可少的任何变量都不能在没有初始化状态下使用。编译器不能检查数组元素的初始化情况。
Java允许用初值来创建数组,如例:
String names[]={”Georgianna”,“Tenn”,“Simon“,“Tom“};
用4个字符串常量初始化names数组,这种方式称为静态初始化,它等价于:
String names[];
names=new String[4];
names[0]=“Georgianna“;
names[1]=“JEN”;
names[2]=”Simon“;
静态初始化可用于任何元素类型,初值块中每个位置的每个元素对应一个引用。
Ⅲ java中怎么数组初始化
一维数组
1)
int[] a; //声明,没有初始化
2)
int[] a=new int[5]; //初始化为默认值,int型为0
3)
int[] a={1,2,3,4,5};
//初始化为给定值
4)
int[] a=new int[]{1,2,3,4,5}; //同(3)
int[] a=new int[5]{1,2,3,4,5};
//错误,如果提供了数组初始化操作,则不能定义维表达式
5)
int[] a;
a=new int[5]; //正确,同(2)一样
int[] a;
a={1,2,3,4,5}; //错误数组常量只能在初始化操作中使用,如(3)
6) int a[];
a[0]=1;
//错误,因为数组没有初始化,不能赋值a[1]=2; 二维数组
1)
int[][] a;
//声明,没有初始化
2) int[][] a=new int[2][3];
//初始化为默认值,int型为0
3)
int[][] a={{1,2},{2,3},{3,4}};
//初始化为给定值
int[][] a={{1,2},{2,3},{3,4,5}};
//没有错,数组空间不是连续分配的,所以不要求每一维的大小相同
4)
int[][] a=new int[2][];
a[0]=new int[3];
//a[0]其实就是一个数组a[1]=new int[4];
//每一维的大小可以不一样
;
5)
int[][] a=new
int[][]{{1,2},{2,3},{3,4,5}};
//同(3)
Ⅳ java数组静态初始化区别(内存方面)
我没太明白你说的静态数组初始化是什么意思。
正常静态数组变凉
static int[] a = {1,2,3,4,5};
静态存储的是这个a这个变量,这个变量再进程运行没有退出之前都存在,不回被垃圾收集齐回收。
1,2,3,4,5这些毫无疑问是存放在堆中的。这样如果a这个变量没有指向其他的,1,2,3,4,5都不会被收集。
普通的变量
int b[] = {1,2,3,4,5}
这个变量,离开了作用域,并且没有被其他类引用的话,下一次垃圾回收来临时被判断为链路不可达,被回收资源,就访问不到了。
Ⅳ 关于java数组初始化
null表示没有,或者空,而0是个数字,是个元素
Ⅵ java中数组的初始化
楼主的三种方法应该是同一种类型的
数组都有了长度 而且每个数组成员也有了初值 只不过第一种 初值是系统分配的 0 后两种是用户定义的
静态初始化的概念 在java里好像只是对 static类型的变量初始化