首页 > 编程语言 >Java中一维数组的学习

Java中一维数组的学习

时间:2024-08-08 11:10:15浏览次数:11  
标签:遍历 myList 一维 while 循环 数组 Java public

一维数组


目录

创建数组

Java语言使用new操作符来创建数组,语法如下:

arrayRefVar = new dataType[arraySize];

上面的语法语句做了两件事:

  • 使用 dataType[arraySize] 创建了一个数组。
  • 把新创建的数组的引用赋值给变量 arrayRefVar。

数组变量的声明,和创建数组可以用一条语句完成,如下所示:

dataType[] arrayRefVar = new dataType[arraySize];

另外,你还可以使用如下的方式创建数组。

dataType[] arrayRefVar = {value0, value1, ..., valuek};

数组的元素是通过索引访问的。数组索引从 0 开始,所以索引值从 0 到 arrayRefVar.length-1。

实例

下面的语句首先声明了一个数组变量 myList,接着创建了一个包含 10 个 double 类型元素的数组,并且把它的引用赋值给 myList 变量。

public class TestArray {
   public static void main(String[] args) {
      // 数组大小
      int size = 10;
      // 定义数组
      double[] myList = new double[size];
      myList[0] = 5.6;
      myList[1] = 4.5;
      myList[2] = 3.3;
      myList[3] = 13.2;
      myList[4] = 4.0;
      myList[5] = 34.33;
      myList[6] = 34.0;
      myList[7] = 45.45;
      myList[8] = 99.993;
      myList[9] = 11123;
      // 计算所有元素的总和
      double total = 0;
      for (int i = 0; i < size; i++) {
         total += myList[i];
      }
      System.out.println("总和为: " + total);
   }
}

以上实例输出结果为:

总和为: 11367.373

数组的遍历

for循环遍历数组

通常遍历数组都是使用for循环来实现。遍历一维数组很简单,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度。

public class ForLoopTraversal {
    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5};
        // 使用for循环遍历数组
        for (int i = 0; i < numbers.length; i++) {
            System.out.print(numbers[i] + " ");
        }
        // 输出:1 2 3 4 5
    }
}

for-each循环遍历

Java提供了增强的for循环(也称为"for-each"循环),它简化了数组的遍历。这种循环不需要使用索引来访问数组元素,而是直接遍历数组中的每个元素。

public class EnhancedForLoopTraversal {
    public static void main(String[] args) {
        String[] names = {"Alice", "Bob", "Charlie"};
        // 使用增强for循环遍历数组
        for (String name : names) {
            System.out.print(name + " ");
        }
        // 输出:Alice Bob Charlie
    }
}

while循环遍历

虽然不常见,但也可以使用while循环来遍历数组。需要维护一个索引变量,并在每次迭代后更新它。

public class WhileLoopTraversal {
    public static void main(String[] args) {
        double[] decimals = {1.1, 2.2, 3.3, 4.4, 5.5};
        // 使用while循环遍历数组
        int index = 0;
        while (index < decimals.length) {
            System.out.print(decimals[index] + " ");
            index++;
        }
        // 输出:1.1 2.2 3.3 4.4 5.5
    }
}

do-while循环遍历

do-while循环也可以用于遍历数组。与while循环不同,do-while循环至少执行一次循环体,即使数组为空。

public class DoWhileLoopTraversal {
    public static void main(String[] args) {
        char[] letters = {'A', 'B', 'C', 'D', 'E'};
        // 使用do-while循环遍历数组
        int index = 0;
        do {
            System.out.print(letters[index] + " ");
            index++;
        } while (index < letters.length);
        // 输出:A B C D E
    }
}

数组的反向遍历

有时需要从数组的最后一个元素开始遍历到第一个元素。可以通过从length - 1开始递减索引来实现。

public class ReverseTraversal {
    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5};
        // 反向遍历数组
        for (int i = numbers.length - 1; i >= 0; i--) {
            System.out.print(numbers[i] + " ");
        }
        // 输出:5 4 3 2 1
    }
}

标签:遍历,myList,一维,while,循环,数组,Java,public
From: https://www.cnblogs.com/BingBing-8888/p/18348517

相关文章

  • java集成onlyoffice实现文档在线预览编辑
    一、onlyoffice是什么ONLYOFFICE是一款由AscensioSystemSIA公司开发的在线办公软件套件,它提供了文档编辑、电子表格、演示文稿和表单等多种办公工具,旨在提高团队协作效率和文档处理的便捷性。以下是关于ONLYOFFICE的详细介绍:1、软件概述名称:ONLYOFFICE文档(英文名ONLYOFFIC......
  • 如何把Connection 封装到工具类里面 调用工具类方法实现 增删改查操作 java JDBC
    如何把Connection封装到工具类里面调用工具类方法实现增删改查操作javaJDBC使用数据库连接池以HikariCP为例在JDBC中,使用数据库连接池是一个常见的做法,以提高数据库操作的效率和性能。连接池管理着一组数据库连接,这些连接可以被重用而不是每次需要时都创建新的连接。......
  • 如何把Connection 封装到工具类里面 调用工具类方法实现 增删改查操作 java JDBC使用
    如何把Connection封装到工具类里面调用工具类方法实现增删改查操作javaJDBC使用C3P0数据库连接池答:当使用C3P0作为数据库连接池时,你可以按照类似的模式来配置和使用它。以下是一个示例,展示了如何在Java项目中配置C3P0连接池,并创建一个工具类来管理数据库连接和执行基本的......
  • Java基础(十):静态变量、静态方法、代码块、main方法
    Java基础(十):静态变量、静态方法、代码块、main方法文章目录一、类变量/静态变量(static)二、类方法/静态方法(static)三、main方法四、代码块(一)static代码块(二)普通代码块五、属性初始化、代码块、构造器的调用优先级【超级重点】一、类变量/静态变量(static)(一)类变量......
  • java 时间段划分 1.把一个时间段划分为 整天 和非整天的时间段 2. 把List<Loca
     时间段划分  1.把一个时间段划分为整天和非整天的时间段  例如: "2024-07-1108:30:00" ~   "2024-07-2308:30:00";例如 完整的日期:2024-07-122024-07-132024-07-142024-07-152024-07-162024-07-172024-07-182024-07-192024-07-202024-07-21202......
  • 计算机毕业设计-基于Java+SSM架构的珠宝首饰交易平台系统项目开发实战(附源码+论文)
    大家好!我是程序员一帆,感谢您阅读本文,欢迎一键三连哦。......
  • 宏观层面理解Java IO
    什么是IO简单来说就是输入和输出,体现了数据的流动。从不同的视角来看,IO有不同的解释直观层面在日常生活中,键盘鼠标,显示器音响打印机,这些就属于IO设备,人机交互的过程中,需要我们对计算机输入指令,计算机给我们输出内容,声音文字视频等等。计算机视角在计算机视角,任何涉及到CPU与......
  • Java数组篇[1]:数组的定义和声明
    哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  我是一名后端开发爱好者......
  • Java数组篇[2]:数组的初始化
    哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  我是一名后端开发爱好者......
  • 计算机毕业设计项目推荐,院系资料分类管理平台 84184(开题答辩+程序定制+全套文案 )上万
    目 录摘要1绪论1.1研究背景1.2研究意义1.3论文结构与章节安排2 院系资料分类管理平台系统分析2.1可行性分析2.2系统流程分析2.2.1数据增加流程2.2.2数据修改流程2.2.3数据删除流程2.3系统功能分析2.3.1功能性分析2.3.2非功能性分析......