java二维对象数组_java 二维数组和对象数组

java二维对象数组_java 二维数组和对象数组1.二维数组:二维数组就是存储一维数组(内存地址/引用)的数组2.二维数组的初始化1)intintA[][]={{1,2},{2,3},{3,4,5}};2)int[][]intB=newint[3][5];3)int[]intC[]=newint[3][];intC[0]=newint[2];intC[1]=newint[3];intC[2]=newint[5];1…

大家好,又见面了,我是你们的朋友全栈君。

1.二维数组:二维数组就是存储一维数组(内存地址/引用)的数组

dbdd3487b4cabd12bf1e5fea5102d1c6.png

2.二维数组的初始化

1) int intA[][]={
{1,2},{2,3},{3,4,5}};

2) int [][] intB=new int[3][5];

3) int []intC []=new int[3][];

intC[0]=new int[2];

intC[1]=new int[3];

intC[2]=new int[5];

1 public classTestArray2 {2 public static voidmain(String[] args) {3 //二维数组不是规则的矩阵

4 int [] intA[] ={
{1,2},{2,3,4},{3,4,5,6}};5 System.out.println(intA);//[[I@5e265ba4 两个[[表示是二维的 I表示数组是int型 @5e265ba4是内存地址6

7 //声明一一个二维数组,用于存储3个一维数组,每一个一维数据存多少个数组,不知道 ,null

8 int [][]intB=new int[3][];9 intB[0]=new int[3]; //3

10 intB[1]=new int[]{1,2,3,4}; //3

11 intB[2]=new int[2]; //2

12 System.out.println(intB[1]);//[I@156643d4

13 System.out.println(intB[1][1]);//214

15 //声明一个二维数组,同时创建出一维数组,每个一维数组的长度均相同16 //存储三个一维数组,每个一维数组的长度为4

17 int []intC[]=new int[3][4];18 System.out.println(intC);19

20 }21 }

3.二维数组的遍历

1) 普通 for 循环

2) 加强 for 循环

3) 普通 for 循环+加强 for 循环

d4eefefc20946bba6057708c173a83cfd89.jpg

f489c1e7ae8a492fe41963e6e344be5d45d.jpg

public classTestArray3 {public static voidmain(String[] args) {//二维数组

int [] intA[] ={
{1,2},{2,3,4},{3,4,5,6}};//(1)普通for循环

for(int i=0;i

for(int j=0;j

System.out.print(intA[i][j]+”\t”);

}

System.out.println();

}//(2)加强for循环

System.out.println(“\n=========================”);for(int[] arr:intA){ //int[]二维数组中元素的类型, arr迭代变量, intA二维组的名称

for(int i:arr){ //int,一维数组中元素的类型,i,迭代变量,arr,一维数组的名称

System.out.print(i+”\t”);

}

System.out.println();

}//(3)普通与加强for循环的混搭

System.out.println(“\n————————-“);for(int [] arr:intA){//加强for

for(int i=0;i

System.out.print(arr[i]+”\t”);

}

System.out.println();

}

System.out.println(“\n————————–“);for(int i=0;i

System.out.print(j+”\t”);

}

System.out.println();

}

}

}

View Code

4.对象数组存储表格数据

张三   19   男

李四   20   女

王五   28   男

数组存基本数据类型,也可以存引用数据类型

对象数组:使用数组存储对象(自定义对象)

83165d3206cd11b2be0b0a1722d0f9b45ce.jpg

19f5dff89ca24ca837d00658abdf0f6d431.jpg

public classPerson {private String name;//姓名

private int age;//年龄

private String gender;//性别//重写toString以打印想要的输出 否则只会打印对象的内存地址

@OverridepublicString toString() {//TODO Auto-generated method stub

return name+”\t”+age+”\t”+gender;//}public Person(String name, intage, String gender) {super();this.name =name;this.age =age;this.gender =gender;

}publicPerson() {super();

}publicString getName() {returnname;

}public voidsetName(String name) {this.name =name;

}public intgetAge() {returnage;

}public void setAge(intage) {this.age =age;

}publicString getGender() {returngender;

}public voidsetGender(String gender) {this.gender =gender;

}

View Code

1 public classTestArray {2 public static voidmain(String[] args) {3 //创建一个Person类型的数组,用于存储3个Person类型的对象

4 Person [] pers=new Person[3];5 //创建Person类型的对象

6 Person p1=new Person(“张三”, 19, “男”);7 //将p1对象存储到Person类型的数组中

8 pers[0]=p1;9

10 pers[1]=new Person(“李四”, 20, “女”);11 pers[2]=new Person(“王五”,28,”男”);12

13 for(int i=0;i

17 }18 }

f8316a9061c6513a3fd7eef9f472976e.png

5.数组拷贝

地址的拷贝

int[]array={11,22,33,44};

int[] arrayB=new int[5];

arrayB=array   //两个数组指向同一内存

值的拷贝

int[]array={11,22,33,44};

int[] arrayB=new int[5];

arrayB[0]=array[0];

System 类中的 arraycopy(…)方法:快速,数组大时用次方法。

1 public classTestArrayCopy3 {2 public static voidmain(String[] args) {3 int [] arrA={11,22,33,44};//源数组

4 int [] arrB=new int[5];//目标数组

5

6 System.out.println(“数组拷贝之前”);7 for(intnum:arrB){8 System.out.print(num+”\t”);9 }10 //0 0 0 0 011 //拷贝

12 System.arraycopy(arrA, 0, arrB, 1, 2);13

14 System.out.println(“\n数组拷贝之后”);15 for(intnum:arrB){16 System.out.print(num+”\t”);17 }18 //0 11 22 0 0

19 }20 }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132948.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 多重比较法-LSD[通俗易懂]

    多重比较法-LSD[通俗易懂]总第174篇/张俊红前面我们讲了方差分析,方差分析主要是用于多组均值比较的,方差分析的结果是多组均值之间是否有显著性差异,但是这个显著性差异是整体的显著性差异,可是我们并…

  • php开发工程师面试题知识点总结(一)「建议收藏」

    php开发工程师面试题知识点总结(一)

  • django不使用外键连接表_什么是外键和参照表

    django不使用外键连接表_什么是外键和参照表外键删除操作如果一个模型使用了外键。那么在对方那个模型被删掉后,该进行什么样的操作。可以通过on_delete来指定。可以指定的类型如下:CASCADE:级联操作。如果外键对应的那条数据被删除了,

  • sql修改语句_数据透视表中的字段能不能进行修改

    sql修改语句_数据透视表中的字段能不能进行修改HSQL修改tablecolumn的语法

  • python 傅里叶变换画图_傅里叶变换图像处理

    python 傅里叶变换画图_傅里叶变换图像处理前面一篇文章我讲解了Python图像量化、采样处理及图像金字塔。本文主要讲解图像傅里叶变换的相关内容,在数字图像处理中,有两个经典的变换被广泛应用——傅里叶变换和霍夫变换。其中,傅里叶变换主要是将时间域上的信号转变为频率域上的信号,用来进行图像除噪、图像增强等处理。基础性文章,希望对你有所帮助。同时,该部分知识均为杨秀璋查阅资料撰写,转载请署名CSDN+杨秀璋及原地址出处,谢谢!!1.图像傅里叶变换2.Numpy实现傅里叶变换3.Numpy实现傅里叶逆变换4.OpenCV实现傅里叶变换

    2022年10月14日
  • wincc远程服务器配置,WINCC-OPC服务器配置

    wincc远程服务器配置,WINCC-OPC服务器配置《WINCC-OPC服务器配置》由会员分享,可在线阅读,更多相关《WINCC-OPC服务器配置(13页珍藏版)》请在人人文库网上搜索。1、两台WinCC之间OPC通讯方法(WinXP)OPC客户端1、登陆计算机名及密码要与服务器端(OPCServer)一致。a)如:用户名:administrator密码:12342、OPC客户端要与服务器端处于同一个网络。a)如:OPCServerIP:…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号