七天速通javaSE:第四天 数组基础

news2024/12/29 10:51:36

文章目录

  • 前言
  • 一、认识数组
  • 二、数组的声明和创建
    • 1. 声明数组变量
    • 2. 创建数组
    • 3. 变量的初始化(赋值)
      • 3.1 静态初始化
      • 3.2 动态初始化
    • 3. 示例
  • 三、数组的使用
    • 1. 循环
      • 1.1 普通for循环
      • 1.2 For-Each 循环
    • 2. 数组作为函数的参数和返回值


前言

本文将为大家介绍 Java 数组的声明、创建和初始化,并给出其对应的代码。


一、认识数组

  1. 概念:相同类型元素的有序集合
  2. 作用:简化操作,避免重复定义多个同类型数据:int a、int b、int c……
  3. 数组的访问:通过下标访问

示例:

int [10]array = {1,2,3,4,5,6,7,8,9,10};

在这里插入图片描述

注意:下标从0开始

二、数组的声明和创建

1. 声明数组变量

dataType[] arrayName;   // 首选的方法
 
或
 
dataType arrayName[];  // 效果相同,但不是首选方法

2. 创建数组

arrayName = new dataType[arraySize];

声明变量和创建数组可以合并

dataType[] arrayRefVar = new dataType[arraySize];

3. 变量的初始化(赋值)

3.1 静态初始化

int []a = {1,2};

3.2 动态初始化

int []b = new int[2];
b[0] = 1;
b[1] = 2;

3. 示例

ArrayBase.java文件

public class ArrayBase {
    public static void main(String[] args) {
        int []array;//1.声明array数组
        array = new int[5];//2.创建数组,开辟五个连续空间,存储五个int类型数据

        //声明和创建可以合并
        int []Array = new int[6];

        //3.赋值(初始化)
        Array[0] = 1;
        Array[1] = 2;
        Array[2] = 3;
        Array[3] = 4;
        Array[4] = 5;
        Array[5] = 6;

        //4.循环打印数组
        for (int i = 0; i <= 5; i++) {
            System.out.print(Array[i]=" ");
        }
    }
}

运行结果
在这里插入图片描述

注意:访问数组是通过下标访问的,而下标是从0开始的,一共定义了六个元素,所以i的范围是0~5.超出则会报错:
在这里插入图片描述

三、数组的使用

1. 循环

1.1 普通for循环

ArrayBase.java文件

public class ArrayBase {
    public static void main(String[] args) {
        int []a = {1,2,3,4,5};

        //1.打印每个数组元素
        for (int i = 0; i <= 4; i++) {
            System.out.print(a[i]+" ");
        }
        System.out.println("\n"+"===========我是分割线");
        //2.数组内元素求和
        int sum = 0;
        for (int i = 0; i <= 4; i++) {
            sum += a[i];
        }
        System.out.println(sum);
        System.out.println("===========我是分割线");
        //3.求最大值
        int max = a[0];
        //length是数组的长度,a.length = 5
        for (int i = 1; i < a.length; i++) {
            if(max < a[i]){
                max = a[i];
            }
        }
        System.out.println(max);
    }
}

运行结果
在这里插入图片描述

1.2 For-Each 循环

概念:For-Each 循环又称为加强型循环,它能在不使用下标的情况下遍历数组。

 // 1.2 for-Each循环,打印所有数组
        for (int i : a) {
            System.out.print(i+" ");
        }

在这里插入图片描述
运行结果
在这里插入图片描述

2. 数组作为函数的参数和返回值

写一个程序,将一个数组内的所有元素倒序输出
实列:
ArrayBase.java文件

public class ArrayBase {
    public static void main(String[] args) {
        int []array1 = {1,2,3,4,5,6};
        int []array2 = reverse(array1);
        printArray(array2);
    }

    //定义一个reverse方法,实现倒序输出的功能
    public static int []reverse(int[] arrays){
        int []result = new int[arrays.length];//创建result数组
        //倒序输出功能的实现
        int j = arrays.length - 1;
        for (int i = 0; i < arrays.length; i++) {
            result[j] = arrays[i];
            j--;
        }
        return result;
    }

    public static void printArray(int[] array){
        //定义一个printArray方法,实现打印每个数组元素的功能
        for (int j : array) {
            System.out.print(j + " ");
        }
    }
}

运行结果
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1871098.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(十九)

课程地址&#xff1a; 黑马程序员HarmonyOS4NEXT星河版入门到企业级实战教程&#xff0c;一套精通鸿蒙应用开发 &#xff08;本篇笔记对应课程第 29 节&#xff09; P29《28.网络连接-第三方库axios》 要想使用第三方库axios&#xff0c;需要先安装ohpm&#xff0c;因为 axios…

Redis优化之持久化

目录 1.Redis高可用 2.Redis持久化 2.1 RDB持久化 2.1.1 触发条件 2.1.2 执行流程 2.1.3 启动时加载 2.2 AOF持久化 2.2.1 开启AOF 2.2.2 执行流程 2.2.3 文件重写触发方式 2.2.4 文件重写的流程 2.2.5 启动时加载 2.3 RDB和AOF的优缺点 3.Redis性能管理 3.1 查看…

LEED绿色建筑认证的优缺点是什么

LEED绿色建筑认证的优缺点&#xff1a; 优点&#xff1a; 环保可持续性&#xff1a;LEED认证强调建筑的节能、节水以及材料循环利用等环保策略&#xff0c;有助于减少资源消耗和降低对环境的负面影响&#xff0c;推动建筑行业向更加环保的方向转变。 降低运营成本&#xff1a…

『Z-Workshop』 6月22日线下ALCOVE分享活动

2024 求是创新 ZJUBCA Sponsored by the ALCOVE Community TIME&#xff1a;2024/06/22 ADD&#xff1a;浙江大学紫金港校区 --- Alcove 是 Aptos 公链与 Alibaba Cloud 共同打造的亚洲首个 Move 开发者社区&#xff0c;致力于支持开发者使用 Move 语言构建下一代 Web3 应用&am…

华为笔记本电脑d盘数据丢失:原因、恢复方案与防范建议

华为笔记本电脑以其高性能和稳定的品质赢得了众多用户的青睐&#xff0c;但即使是如此优质的设备&#xff0c;也难免遭遇数据丢失的困境。本文将围绕华为笔记本电脑D盘数据丢失这一问题&#xff0c;探讨其常见原因、恢复方案&#xff0c;并提出未来防范的建议&#xff0c;以帮助…

用户订单管理API:轻松管理,购物无忧

在当今数字化时代&#xff0c;电子商务已经成为人们购物的首选方式。与传统的实体店相比&#xff0c;电商的优势在于便捷、快速、多样化等特点&#xff0c;使得更多的消费者选择了通过网络购物。而作为电商平台&#xff0c;如何提供更好的购物体验&#xff0c;是每个平台都需要…

ForkJoin框架与工作窃取算法详解

文章目录 一、ForkJoin框架概述1_核心概念2_主要类和方法1_ForkJoinPool2_ForkJoinTask 二、启用异步模式与否的区别三、ForkJoinPool的三种任务提交方式四、执行逻辑及使用示例1_示例&#xff1a;并行计算数组元素和2_forkJoinPool.submit3_ForkJoinTask<?>中任务的执行…

支持向量回归原理详解及Python代码示例

支持向量回归原理详解 支持向量回归&#xff08;Support Vector Regression, SVR&#xff09;是支持向量机&#xff08;SVM&#xff09;的一种扩展&#xff0c;用于回归问题。SVR通过寻找一个最佳的回归超平面&#xff0c;使得尽可能多的数据点落在超平面附近的ε-管内&#xf…

ubuntu16安装DHCP

一、安装dns server软件包 $ apt-get install bind9 二、配置BIND9 配置文件的目录默认为/etc/bind cd /etc/bind 进入该目录。。。 1、vi /etc/bind/named.conf.local zone "xuehai.com" {type master;file "/etc/bind/db.xuehai.com"; }; image.png …

win11记事本错误打开一次非常多的文件再次使用时造成卡住

错误地不小心一次性打开数十个数百个文件造成再次使用时&#xff0c;文件卡住。 亲测有效。

ISP IC/FPGA设计-第一部分-SC130GS摄像头分析-IIC通信(1)

1.摄像头模组 SC130GS通过一个引脚&#xff08;SPI_I2C_MODE&#xff09;选择使用IIC或SPI配置接口&#xff0c;通过查看摄像头模组的原理图&#xff0c;可知是使用IIC接口&#xff1b; 通过手册可知IIC设备地址通过一个引脚控制&#xff0c;查看摄像头模组的原理图&#xff…

离散傅里叶变化

傅里叶变换 对傅里叶变换了解不是很清楚的朋友推荐一下这个帖子&#xff0c;讲得很详细 傅里叶变换 源码 先看源码链接 #include "opencv2/core.hpp" #include "opencv2/imgproc.hpp" #include "opencv2/imgcodecs.hpp" #include "open…

Yolov8可视化界面使用说明,含代码

⭐⭐ YOLOv8改进专栏|包含主干、模块、注意力机制、检测头等前沿创新 ​ ⭐⭐ YOLOv8可视化界面如下 使用需要安装opencv-python、torch、numpy及PySide6(python版本>3.9) pip install PySide6 pip install numpy pip install opencv-python 使用说明 运行下方代码&#xf…

《software architecture patterns》学习笔记

了解通用的架构模式并知道什么时候使用它们。 软件架构定义了软件的基本特点和行为。比如&#xff0c;有些软件架构会让软件变得可扩展&#xff0c;而有些软件架构会让软件变得易于修改。 知道每一种软件架构的特点、优缺点是非常有必要的&#xff0c;因为它们能帮助你选择一种…

LeetCode刷题之HOT100之课程表

吃完普通的食堂饭菜&#xff0c;回到实验室&#xff0c;继续做一道题&#xff01; 1、题目描述 2、逻辑分析 这道题涉及到图相关知识&#xff0c;应用到了拓扑排序。 题意解释 一共有 n 门课要上&#xff0c;编号为 0 ~ n-1。先决条件 [1, 0]&#xff0c;意思是必须先上课 0…

湖北大学2024年成人高考函授报名专升本法学专业介绍

湖北大学&#xff0c;这所承载着深厚文化底蕴和学术积淀的高等学府&#xff0c;始终致力于为广大有志之士提供多元化的学习机会。在时代的浪潮中&#xff0c;为了满足社会对于高层次法律人才的需求&#xff0c;湖北大学特别推出了成人高等继续教育项目&#xff0c;为广大在职人…

双击跳转到 BP 事务代码 CALL TRANSACTION BP AND SKIP FIRST SCREEN

BP 维护业务伙伴 BP事务代码不能像普通的VA03 这样跳转&#xff0c;下面介绍3种方法。 1. 单纯跳转到BP FORM FRM_SHOW_BP USING LV_BP TYPE BU_PARTNER.CALL METHOD CL_RMPS_ADDRESS>SHOW_BPEXPORTINGIM_BP_NUMBER LV_BP. ENDFORM. 2. 带业务伙伴角色跳转到BP&#xff…

NAND闪存巨头铠侠(Kioxia)计划最迟于10月下旬通过首次公开募股IPO

据路透社于6月26日引用消息来源的报道&#xff0c;在半导体市场条件反弹及财务业绩迅速改善的背景下&#xff0c;NAND闪存巨头铠侠&#xff08;Kioxia&#xff09;正准备尽快提交初步申请&#xff0c;并计划最迟于10月下旬通过首次公开募股&#xff08;IPO&#xff09;在东京证…

Kubernetes之Scheduler详解

本文尝试从Kubernetes Scheduler的功能介绍、交互逻辑、伪代码实现、最佳实践、自定义Scheduler举例及其历史演进6个方面进行详细阐述。希望对您有所帮助&#xff01; 一、Kubernetes Scheduler 功能 Kubernetes Scheduler 是 Kubernetes 集群的核心组件之一&#xff0c;负责…

使用jupyter打开本地ipynb文件的方法

常用方法&#xff1a; 先启动jupyter&#xff0c;然后在打开的页面点击upload&#xff0c;选择想要打开的文件上传然后打开&#xff0c;但是这样其实是先复制了一份到jupyter中&#xff0c;然后打开运行。而我不想复制。 方法二 先打开项目文件所在文件夹&#xff0c;文件夹…