动态初始化java代码 java静态初始化和动态初始化的区别

java高手:java定义二维数组问题

int a[][] = new int[3][2]; 表示定义一个三行二列的二维数组,但是a[0] = {1,6}; 是对一维数组进行赋值,而a是二维数组无法使用一维数组的赋值方法,所以程序会报错。

创新互联-专业网站定制、快速模板网站建设、高性价比白云网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式白云网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖白云地区。费用合理售后完善,十余年实体公司更值得信赖。

该代码的正确方法应该是:

int a[][] = new int[3][2];

a[0][0]=1;

a[0][1]=6;

扩展资料

java定义二维数组的方法:

1、动态初始化

数据类型 数组名 [ ][ ] = new 数据类型[m][n]

数据类型 [ ][ ]  数组名 = new 数据类型[m][n]

数据类型 [ ]   数组名 [ ] = new 数据类型[m][n]

举例:int [ ][ ]  arr=new  int [5][3];  也可以理解为“5行3例”

2、 静态初始化

数据类型 [ ][ ]   数组名 = {{元素1,元素2....},{元素1,元素2....},{元素1,元素2....}.....};

举例:int [ ][ ]  arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},}

参考资料来源:百度百科——二维数组

如何初始化java数组

静态初始化 和动态初始化

一维数组的声明方式:

type var[]; 或type[] var;

声明数组时不能指定其长度(数组中元素的个数),

Java中使用关键字new创建数组对象,格式为:

数组名 = new 数组元素的类型 [数组元素的个数]

初始化:

1.动态初始化:数组定义与为数组分配空间和赋值的操作分开进行;

2.静态初始化:在定义数字的同时就为数组元素分配空间并赋值;

3.默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。

实例:

TestD.java(动态):

程序代码:

public class TestD { public static void main(String args[]) { int a[] ; a = new int[3] ; a[0] = 0 ; a[1] = 1 ; a[2] = 2 ; Date days[] ; days = new Date[3] ; days[0] = new Date(2008,4,5) ; days[1] = new Date(2008,2,31) ; days[2] = new Date(2008,4,4) ; } } class Date { int year,month,day ; Date(int year ,int month ,int day) { this.year = year ; this.month = month ; this.day = day ; } }

TestS.java(静态):

程序代码:

public class TestS

{

public static void main(String args[]) {

int a[] = {0,1,2} ;

Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ;

}

}

class Time

{

int hour,min,sec ;

Time(int hour ,int min ,int sec) {

this.hour = hour ;

this.min = min ;

this.sec = sec ;

}

}

java中的静态初始化和动态初始化?

静态初始化就是static,动态初始化就是new

所谓的静态和动态是相对于程序运行是而言的,静态是在程序编译时就初始化好了的,动态初始化是在程序运行是才动态分配内存空间,

我觉得已经够通俗的了

java对象数组的动态初始化问题

我的理解时这样的:

当Person per[] = new Person[3];这句代码执行时,系统会申明一个数组变量,并指向三个地址,但是地址中是没有值的。

per[0] = new Person("张三");当执行到这句代码时,系统会将其中数组地址中索引为0的地址赋值,值为对象(Person('张三')),而并不是String内存空间。

并且你贴出来的这两句代码中只会执行一次new操作

也就是只会为其中一个对象的name赋值字符串“张三”

我觉得不会涉及到两块String内存空间

java中静态初始化和动态初始化

静态初始化就是static,动态初始化就是new

所谓的静态和动态是相对于程序运行是而言的,静态是在程序编译时就初始化好了的,动态初始化是在程序运行是才动态分配内存空间,

我觉得已经够通俗的了


网站标题:动态初始化java代码 java静态初始化和动态初始化的区别
分享网址:http://scyanting.com/article/doscjje.html