java点名代码滚动_经典案例实现-点名器

本文介绍了如何使用Java实现一个简单的点名器,通过随机数生成器选择学生姓名。接着,详细讲解了二维数组的概念、初始化、动态与静态初始化方法,以及遍历二维数组的各种方式。同时,提到了Arrays类在处理多维数组中的作用。
摘要由CSDN通过智能技术生成

Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待

4999元包邮

去购买 >

经典案例实现-点名器

运行代码,随机打印班级同学名字

//1.数组存储姓名,用String数据类型

String[] names={"杰克","戴维琼斯","伊丽莎白","爱丽丝"};

//2.遍历数组,打印出所有姓名

for(int i=0;i

System.out.println(names[i]);

}

//3.随机出一个人名

//利用随机数,生成一个证书,作为索引,到数组中查找对应的元素

Random ran=new Random();

//随机数的范围是[0,names.length-1]

int index=ran.nextInt(names.length); //括号中填写的最大数是获取不到的,因为nextInt获取的范围是左闭右开区间

System.out.println(names[index]);

二维数组

二维数组可以看成以数组为元素的数组。

其实多维数组不仅仅只有二维数组,还有三维数组,四维数组..., 但是三维以上很少见到,所以大家重点了解二维数组即可。

举例

int [][] a = {{1,2},{3,4,0,9},{5,6,7}};

初始化

动态初始化

数组定义与为数组元素分配空间和赋值的操作分开进行

数据类型[][] 数组名 = new 数据类型[一维][二维];

注意:这种初始化方式,每一个内层的二位数组长度相同

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

a[0][0] = 1;

a[0][1] = 2;

数据类型[][] 数组名 = new 数据类型[一维][];

内层数组需要我们自己去创建(下面可以用一维数组的创建方式)

数组名[一维数组索引值] = new 数据类型[二维];

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

arr[0]=new int[2];

arr[1]=new int[]{3,4,5,6};

arr[2]=new int[]{7,8,9};

arr[0][0] = 1;

arr[0][1] = 2;

静态初始化

在定义数组的同时就为数组元素分配空间并赋值

数据类型[][] 数组名 = new 数据类型[][]{{...},{...},{...}};

数据类型[][] 数组名 = {{...},{...},{...}}; --简化写法

int[][] arr1=new int[][]{{5,4,8},{3,8},{1}};

char[][] arr2={{'a'},{'b','c'}};

遍历方式

双重循环实现多维数组的遍历

//普通for循环嵌套增强for循环

for(int i=0;i<=arr1.length-1;i++){

for(int j:arr1[i]){

System.out.println(j);

}

}

//增强 for循环嵌套普通for循环

for(int[] arr:arr1){

for(int i=0;i<=arr.length-1;i++){

System.out.println(arr[i]);

}

}

//普通for嵌套普通for循环

...

//增强for嵌套增强for循环

...

Arrays中提供操作多维数组的方法:

static boolean deepEquals(Object[] a1, Object[] a2) 如果两个指定的数组彼此 深度相等 ,则返回 true 。

static String deepToString(Object[] a) 返回指定数组的“深度内容”的字符串表示形式。

double[][] arr1= new double[][] {{1.0,2.0},{3.0,4.0,5.0},{6.0}};

double[][] arr2= new double[][] {{1.0,2.0},{3.0,4.0,5.0},{6.0}};

System.out.println(Arrays.deepToString(arr1)); //[[1.0, 2.0], [3.0, 4.0, 5.0], [6.0]]

System.out.println(Arrays.deepEquals(arr1, arr2)); //true

加VX了解点我扫码领取

学习更多知识,请加入QQ群:1080355292,入群暗号(33)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值