Java 数组的基本使用





目录

    • 含义
    • 语法格式
    • 语句特点
    • 数组的长度
    • 数组的元素
    • 打印数组
    • 显示数组
    • 数组的复制
    • 扩展示例【12】:




含义


数组(array)是一种最简单的复合数据类型,它是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和不同的下标来确定数组中唯一的元素。根据数组的维度,可以将其分为一维数组、二维数组和多维数组等。
总之,数组就是存储同种类型的数据的集合;

例如: 班级就是数组,而班级中的每个学生就是该数组中的成员

包含: 一个数组名称、 元素。




语法格式


  • ① 数据类型[] 数组名称 = {元素1, 元素2, 元素3, ···};
    如: double[] myList = {1.9, 2.9, 3.4, 3.5}; // 静态初始化,声明并初始化数组

  • ② 数据类型[] 数组名称 = new 数据类型[数组长度/元素个数];
    如:int[] numbers = new int[5]; // 动态初始化,声明一个可以容纳5个整数的数组




语句特点


无论使用哪种格式,其实都是会先创建出该数组的长度




数组的长度


也叫数组中元素的个数:数组名称.length;
得到一个 int 类型,例如:

int length = numbers.length; // 获取数组的长度


  • 注:在 Java 中数组的下标是从零开始的,Java 数组下标访问运算符是中括号,如 intArray[0],表示访问 intArray 数组的第一个元素,0 是第一个元素的下标。
    Java 中的数组本身是引用数据类型,它的长度属性是 length。

  • 访问数组元素示例如下

int firstNumber = numbers[0]; // 访问数组的第一个元素
int lastNumber = numbers[numbers.length - 1]; // 访问数组的最后一个元素


  • 修改数组元素示例如下

numbers[0] = 10; // 修改数组的第一个元素为 10




数组的元素


​当创建数组的时候只有规定长度,未给予数据的时候也可以打印数组元素,不同数据类型默认值如下:



数据类型默认值
整数0
小数0.0
布尔false
引用类型null



打印数组


  • Arrays.toString(数组名称)



显示数组


如何把数组中的元素依次显示出来 —— 数组的遍历
使用基本 for 循环或者 For-Each 循环


  • ① 使用 for 循环语法格式如下:

for (int i = 0; i < numbers.length; i++) {
    System.out.println(numbers[i]);
}


  • ② 使用增强型 For-Each 循环语法格式如下:

for(type element: array) {
    System.out.println(element);
}


  • 示例:

public class TestArray {
   public static void main(String[] args) {
   	  // 声明小数类型数组变量,并创建一组数组
   	  // 即把新创建(初始化)的数组引用赋值给变量 
      double[] myList = {1.9, 2.9, 3.4, 3.5};
 
      // 使用 For-Each 循环语句遍历数组
      for (double element: myList) {
     	 // 输入结果换行显示:1.9, 2.9, 3.4, 3.5
         System.out.println(element);
      }
   }
}




数组的复制


所谓复制数组,是指将一个数组中的元素在另一个数组中进行复制(拷贝)。
在 Java 中实现数组复制分别有以下 4 种方法:

Arrays 类的 copyOf() 方法
Arrays 类的 copyOfRange() 方法
System 类的 arraycopy() 方法
Object 类的 clone() 方法


  • 使用 copyOf() 方法拷贝数组示例如下

// 使用 Arrays 工具类拷贝数组
int[] copiedNumbers = Arrays.copyOf(numbers, numbers.length); 










扩展示例【12】:


  1. 创建一个 String 类型的数组,元素个数有 5 个,分别是上海的五个区(自定义),并把数组中的数据打印出来

代码示例  待完善!



  1. 创建一个 double 类型的数组,元素个数也是 5 个,分别是自己 5 个朋友的年龄,并把数组中的数据打印出来
  1. 九九乘法表
  1. 打印一个直角等腰三角形 , 边长:50
  1. 定义一个数组,数据自定,长度为6,并打印该数组的数据
  1. 定义一个数组,长度为6, 数据随机获取(1~100),并把数据打印出来
  1. 在第四题的基础上,显示该数组的最大值和最小值
  1. 显示4位验证码,要求含有字母大小写以及0~9
  1. 按照第六题的题目要求,使用另一种方式完成
  1. 定义一个数组, 元素长度为3个账户的长度,3个账户的信息会存储在该数组中,账户中会有账号和密码两个信息;
    需在控制台上分别输入3个账户的信息,并保存在该数组中,且打印出来
  1. 随机获取两个数字(1~100),求这两个数字之间的累加和
  1. 随机获取两个数字(1~100),求这两个数字之间的奇数和,并求奇数个数








Note:
欢迎点赞,留言,转载请在文章页面明显位置给出原文链接
知者,感谢您在茫茫人海中阅读了我的文章
没有个性 哪来的签名!
详情请关注点我
持续更新中

扫一扫 有惊喜!
© 2024 05 - Guyu.com | 【版权所有 侵权必究】

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mysql基础教程(06):NOT IN

数据准备 首先创建一个数据库educational_manage&#xff0c;记住字符集和排序规则如下选择&#xff1a; 接着创建表和数据&#xff0c;具体的sql代码如下&#xff1a; SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0;-- ---------------------------- -- Table structure f…

JavaScript-隐式转换和显式转换

为什么需要类型转换&#xff1f; 因为JavaScript是弱类型声明&#xff0c;在没赋值前是不知道数据的类型的&#xff0c;只有赋值了才知道&#xff0c;表单和prompt获取的数据都是字符串型&#xff0c;此时就不能直接的简单加减法运算 所以需要转换数据类型 隐式转换 某些运算符…

Xcode=> 安装 simulator

XCode xcode中下载 simulator 点击加号➕&#xff0c;选择对应的版本&#xff0c;即可下载 下载完成&#xff1a; 其他下载办法 因为使用上述下载&#xff0c;会经常性的出现断开&#xff0c;再次下载又是从头开始&#xff0c;太费时费力。下面使用下载地址&#xff0c;然后用…

仓库管理WMS软件(Warehouse Management Software)百科解析

一、什么是仓库管理软件&#xff08;WMS&#xff09;&#xff1f; 仓库管理软件&#xff08;WMS&#xff09;全称Warehouse Management System&#xff0c;是一种专门用于仓库作业流程优化和库存控制的软件系统。它通过先进的自动识别与数据采集技术&#xff0c;实现对仓库货物…

人工智能(Educoder)-- 机器学习 -- 神经网络(初级)

第一关 注&#xff1a; 神经网络的起源和应用 起源&#xff1a;神经网络最早由心理学家和神经学家开创&#xff0c;目的是模拟生物神经系统对真实世界物体的交互反应。应用&#xff1a;现代神经网络用于分类&#xff08;如图像识别、文本分类&#xff09;和数值预测&#xff08…

全球手游4月战报,《Monopoly GO!》荣耀再续!全球手游畅销榜冠军

易采游戏网5月22日消息&#xff0c;在刚刚过去的四月里&#xff0c;全球移动游戏市场的角逐愈发激烈。根据最新发布的数据&#xff0c;Scopely旗下的经典游戏《Monopoly GO!》再次蝉联全球手游畅销榜首冠军宝座&#xff0c;展现了无与伦比的市场魅力与玩家黏度。 4月Scopely《M…

Docker | 基础指令

环境&#xff1a;centos8 参考&#xff1a; 安装 Docker | Docker 从入门到实践https://vuepress.mirror.docker-practice.com/install/ 安装Docker 卸载旧版本&#xff0c;安装依赖包&#xff0c;添加yum软件源&#xff0c;更新 yum 软件源缓存&#xff0c;安装 docker-ce…

Neural Filters:风景混合器

Ps菜单&#xff1a;滤镜/Neural Filters/创意/风景混合器 Neural Filters/CREATIVE/Landscape Mixer 风景混合器 Landscape Mixer滤镜通过与另一个图像混合或改变诸如时间和季节等属性&#xff0c;神奇地改变景观。 “风景混合器”滤镜利用人工智能和机器学习技术&#xff0c;首…

使用Prometheus + Blackbox-exporter快速监控一个网站性能和SSL过期时间

使用blackbox-exporter快速监控一个网站性能和SSL过期时间 环境介绍什么是blackbox-exporter下载blackbox-exporter安装blackbox-exporter配置Prometheus服务端查看job上线监控面板参考文献 环境介绍 本文实验环境 操作系统&#xff1a;Centos 7.9Prometheus版本&#xff1a;…

局部直方图均衡化去雾算法

目录 1. 引言 2. 算法流程 3. 代码 4. 去雾效果 1. 引言 局部直方图算法是一种基于块的图像去雾方法&#xff0c;它将图像分割为若干个块&#xff0c;并在每个块内计算块的局部直方图。通过对各个块的直方图进行分析和处理&#xff0c;该算法能够更好地适应图像中不同区域的…

软件测评在项目中的作用

软件测评在项目中的作用至关重要&#xff0c;主要体现在以下几个方面&#xff1a; 确保软件质量&#xff1a;软件测评是确保软件质量的关键环节。通过对软件的功能、性能、安全性等方面进行全面测试&#xff0c;可以发现软件中的缺陷、错误或不符合需求的地方&#xff0c;从而…

使用OpenVINO™.CSharp.API.Extensions.PaddleOCR NuGet Package快速实现OCR文本识别

PP-OCR是PaddleOCR自研的实用的超轻量OCR系统&#xff0c;可以实现端到端的图像文本检测。为了在C#平台实现使用OpenVINO™部署PP-OCR模型实现文本识别&#xff0c;让更多开发者快速上手PP-OCR项目&#xff0c;基于此&#xff0c;封装了OpenVINO.CSharp.API.Extensions.PaddleO…

selenium环境安装和web自动化基础

webUI自动化背景 因为web页面经常会变化&#xff0c;所以UI自动化测试的维护成本很高。不如接口的适用面广&#xff0c;所以大部分公司会做接口自动化测试&#xff0c;但是未必会做UI自动化测试&#xff1b; UI自动化测试要做也是覆盖冒烟测试&#xff0c;不会到很高的覆盖率&a…

mysql实战——xtrabackup问题

备份恢复后启动不成功。 我测试了很多遍&#xff0c;最开始我以为备份后的数据文件没有pid造成的&#xff0c;所以一直测试 后来发现上图这样是正常的&#xff0c;mysqld_safe后就出现pid和sock文件 那启动失败的原因我认为是权限的问题&#xff0c;把数据文件目录权限全部设置…

利用kubeadm安装k8s集群 以及跟harbor私有仓库下载镜像

目录 环境准备 master&#xff08;2C/4G&#xff09; 192.168.88.3 docker、kubeadm、kubelet、kubectl、flannel node01&#xff08;2C/2G&#xff09; 192.168.88.4 docker、kubeadm、kubelet、kubectl、flannel node02&#xff08;…

DreamerV3阅读笔记

DreamerV3 文章希望解决的一个挑战是用固定的hyperparameter来同时处理不同domain的任务。文章发现&#xff0c;通过结合KL balancing 和free bits可以使得world model learn without tuning&#xff08;是指上面这件事&#xff0c;即不需要对不同任务改变hyperparameter&#…

六.逼格拉满-Prometheus+Grafana微服务监控告警

前言 微服务架构是一个分布式系统&#xff0c;由多个独立的服务组成&#xff0c;每个服务可能运行在不同的容器、虚拟机或物理机上&#xff0c;那么在生产环境中我们需要随时监控服务的状态&#xff0c;以应对各种突发情况&#xff0c;比如&#xff1a;内存爆满&#xff0c;CP…

通过短信群发平台拓客引流营销的效果好不好?

通过短信群发平台进行营销拓客引流的效果可以是非常显著的&#xff0c;但具体效果会受到多种因素的影响&#xff0c;如目标受众的选择、短信内容的吸引力、发送时间和频率的合理性等。 以下是一些短信群发平台营销拓客引流的优势&#xff1a; 1.广泛覆盖&#xff1a;短…

Linux|ubuntu22.04安装CUDA最新完整教程

文章目录 一、安装前准备工作查看GPU和型号查看GCC版本*下载gcc12 *检查驱动 二、安装CUDA Toolkit*安装驱动 三、安装后的工作必要操作推荐的操作开启守护进程模式删除本地下载安装包 四、验证删除CUDA常见问题及解决方案还需要安装cuDNN吗&#xff1f;nvcc: No such file or …

Java-常见面试题收集(十六)

二十五 RocketMQ 1 消息队列介绍 消息队列&#xff0c;简称 MQ&#xff08;Message Queue&#xff09;&#xff0c;它其实就指消息中间件&#xff0c;当前业界比较流行的开源消息中间件包括&#xff1a;RabbitMQ、RocketMQ、Kafka。&#xff08;一个使用队列来通信的组件&…