《从C/C++到Java入门指南》- 13.遍历数组

遍历数组

传统方法

利用接口 数组名.length可以通过循环来进行索引遍历,这点和 C++ 是基本一样的。

令我比较欣喜的是,Java 中居然有迭代遍历。

迭代遍历 for each

java 复制代码
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
        for (int i: arr) {
        	System.out.printf("%d ", i);
        }
    }
}

在不需要使用数组索引的情况下,可以酌情选择使用该循环,但一般来说,尽量少用。

打印数组

直接打印数组,得到的是JVM中的引用地址,没有意义。

java 复制代码
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
        System.out.println(arr);
    }
}

输出结果:[I@5ccd43c2

同时,使用for each进行打印也显得很麻烦。

让人非常兴奋的是,Java 中提供了语法糖Arrays.toString(),麻麻再也不用担心我浪费时间写打印数组啦!

java 复制代码
import java.util.Arrays;
//import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
        System.out.println(Arrays.toString(arr));
    }
}

练习

请按倒序遍历数组并打印每个元素:

java 复制代码
import java.util.Arrays;
//import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
        for (int i = arr.length - 1; i >= 0; i --) {
        	System.out.printf("%d ", arr[i]);
        }
    }
}
相关推荐
龙虾PRO14 小时前
能源与股票量化核心差异,AI全链路落地实操手册
java·面试·职场和发展
llwszx14 小时前
【Java/Go后端手撸原生Agent(第九篇):Plan-and-Execute规划模式——从“走一步看一步“到“先谋后动“】
java·python·golang·agent开发·plan模式·规划执行模式
ZJH__GO14 小时前
网络编程v2--多客户端互通
java·运维·服务器·开发语言·计算机网络
霸道流氓气质15 小时前
SpringBoot中基于 AES-GCM + KMS 密钥管理的数据加解密 Starter 实践
java·数据库·spring boot
zhangfeng113315 小时前
Ascendc 大语言模型框架 AscendCraft 和pypto 的区别 pypto生成算子c++源码吗
c++·人工智能·语言模型·算子开发
Gofarlic_OMS15 小时前
NX浮动许可调度黑名单机制,对比两款谁更合理
java·大数据·运维·开源·制造
一只小灿灿15 小时前
C++ 修饰符全面详解
开发语言·c++
乐观的Terry15 小时前
8、发布系统-完整流水线的核心
java·spring boot·spring·spring cloud
Alexalbb15 小时前
从角色过滤到可审计授权:单体系统数据权限设计复盘与演进
java
code_pgf15 小时前
C/C++ 中 `typedef` 关键字详解
c语言·c++