Java入门到架构师知识点整理 | 数组操作 | 遍历数组
发布日期:2022-05-29 19:55:38
浏览次数:2
分类:技术文章
本文共 1482 字,大约阅读时间需要 4 分钟。
我们在Java程序基础里介绍了数组这种数据类型。有了数组,我们还需要来操作它。而数组最常见的一个操作就是遍历。
通过for
循环就可以遍历数组。因为数组的每个元素都可以通过索引来访问,因此,使用标准的for
循环可以完成一个数组的遍历:
// 遍历数组public class Main { public static void main(String[] args) { int[] ns = { 1, 4, 9, 16, 25 }; for (int i=0; i
为了实现for
循环遍历,初始条件为i=0
,因为索引总是从0
开始,继续循环的条件为i<ns.length
,因为当i=ns.length
时,i
已经超出了索引范围(索引范围是0
~ ns.length-1
),每次循环后,i++
。
第二种方式是使用for each
循环,直接迭代数组的每个元素:
// 遍历数组public class Main { public static void main(String[] args) { int[] ns = { 1, 4, 9, 16, 25 }; for (int n : ns) { System.out.println(n); } }}
注意:在for (int n : ns)
循环中,变量n
直接拿到ns
数组的元素,而不是索引。
显然for each
循环更加简洁。但是,for each
循环无法拿到数组的索引,因此,到底用哪一种for
循环,取决于我们的需要。
打印数组内容
直接打印数组变量,得到的是数组在JVM中的引用地址:
int[] ns = { 1, 1, 2, 3, 5, 8 };System.out.println(ns); // 类似 [I@7852e922
这并没有什么意义,因为我们希望打印的数组的元素内容。因此,使用for each
循环来打印它:
int[] ns = { 1, 1, 2, 3, 5, 8 };for (int n : ns) { System.out.print(n + ", ");}
使用for each
循环打印也很麻烦。幸好Java标准库提供了Arrays.toString()
,可以快速打印数组内容:
// 遍历数组import java.util.Arrays;public class Main { public static void main(String[] args) { int[] ns = { 1, 1, 2, 3, 5, 8 }; System.out.println(Arrays.toString(ns)); }}
练习
请按倒序遍历数组并打印每个元素:
public class Main { public static void main(String[] args) { int[] ns = { 1, 4, 9, 16, 25 }; // 倒序打印数组元素: for (???) { System.out.println(???); } }}
小结
遍历数组可以使用for
循环,for
循环可以访问数组索引,for each
循环直接迭代每个数组元素,但无法获取索引;
使用Arrays.toString()
可以快速获取数组内容。
转载地址:https://blog.csdn.net/ITHHH111/article/details/124106802 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月06日 01时07分18秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
ioctl幻数
2019-04-27
create_proc_read_entry中函数的说名
2019-04-27
strace调试(Linux Device Driver)
2019-04-27
Linux shell sed awk
2019-04-27
使用gdb
2019-04-27
linux自旋锁
2019-04-27
Linux设备驱动之mmap设备操作
2019-04-27
Android Camera调用流程
2019-04-27
给ubuntuGedit安装gedit-source-code-browser
2019-04-27
Mtk camera driver
2019-04-27
DEVICE_ATTR的使用
2019-04-27
Class_file&&Android应用调用方法
2019-04-27
中断处理的tasklet(小任务)机制-不过如此
2019-04-27
Input Driver
2019-04-27
mtk pwm&&linux timer
2019-04-27
s5k5e2ya MIPI 摄像头调试
2019-04-27
用Android UEventObserver监听内核event
2019-04-27
Linux中的工作队列
2019-04-27
linux工作队列
2019-04-27
linux input&&uevent使用
2019-04-27