数组JAVA

2023-11-03

JAVA数组详情

什么是数组

数组就是:存储一组数据类型相同的数据元素
数组在内存中空间是连续的,长度初始好,就不能再做改变
数组是属于应用类型的(对象),所以也就可以即存储基本数据类型,还可以存储引用类型
数组的声明:

int [] a; //这是声明了一个属性为int整数型的数组

数组的创建,因为数组的长度是不能改变的,也就意味着数组在创建时,就规定好了数组的长度

创建的数组在不给于赋值的话,当然会有默认值(初始值)

创建类型 默认值
整数型 0
浮点型 0.0
char 空格
布尔型 false
引用类型 null

数组的创建

数组的创建共有三种方式:

import java.util.Arrays;

public class Demo {
    public static void main(String[] args) {
        /*方式一*/
        int[] a = new int[10];//这是创建了一个为10的动态数组
        System.out.println(Arrays.toString(a));//这是利用java的类来实现的,方便快捷
        //Arrays.toString()是将数组以字符串的形式进行输出打印出来

        /*方式二*/
        int[] b = new int[]{1, 2, 3, 4, 5}; //在创建数组时已经给数组赋好了值
        System.out.println(Arrays.toString(b));

        /*方式三*/
        String[] c = {"a", "b", "c", "d", "e"};//在创建时直接赋好值,这个简便 最常用
        System.out.println(Arrays.toString(c));
    }
}

在这里插入图片描述

数组的访问

数组是通过索引来访问,数组的第一值的编号是0,数组编号从0开始到数组长度减一结束

public class Demo {
    public static void main(String[] args) {
        String[] a = {"a", "b", "c", "d", "e"};
        System.out.println(a[0]);//访问的是数组中的第一个位置的值
        System.out.println(a[4]);//访问时时数组中的最后一个位置的值
    }
}

在这里插入图片描述

数组的报错(ArrayIndexOutOfBoundsException)

这是数组的越界报错,在运行时遇到这个报错就是你要访问数组的位置超过了数组的长度

public class Demo {
    public static void main(String[] args) {
        String[] a = {"a", "b", "c", "d", "e"};
        System.out.println(a[5]);//数组的访问在这里就越界了
    }
}

在这里插入图片描述

数组的遍历

数组的遍历也是数组的迭代
数组的遍历,也是有两种方式的,一种一般for循环,另一种增强for循环
for循环,增强for循环看这详说循环

public class Demo {
    public static void main(String[] args) {
        String[] a = {"a", "b", "c", "d", "e"};
        /*方式一*/
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i]);
        }
        /*方式二*/
        /*for(声明一个变量,用来接收每次从数组中取出的元素 : 需要遍历的数组){
                每循环一次,从数组中取出一个元素,赋给定义的变量,直到元素遍历完成
          }
         */
        for (String x : a) {
            System.out.println(x);
        }
    }
}

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数组JAVA 的相关文章

随机推荐

  • python怎么做多个矩阵_用Python程序添加两个矩阵

    用Python程序添加两个矩阵 在此程序中 您将学习使用嵌套循环和Next列表理解来添加两个矩阵 并显示它们 要理解此示例 您应该了解以下Python编程主题 在Python中 我们可以将矩阵实现为嵌套列表 列表内的列表 我们可以将每个元素
  • openmpi编译安装

    概念原理 OpenMPI是一个免费的 开源的MPI实现 兼容MPI 1和MPI 2标准 OpenMPI由开源社区开发维护 支持大多数类型的HPC平台 并具有很高的性能 功能描述 OpenMPI借助TCP IP网络连接的多台计算机 以此分发数
  • 经典多模态模型

    整点传统多模态学习 下游任务 在讲模型之前 我们先说说 传统多模态任务是下游任务 图文检索 Image Text Retrieval 里面包含图像到文本检索 文本到图像检索 给定一个数据库 搜索到ground truth的图像文本对 因为是
  • NDIS网络数据监控程序NDISMonitor(2)-----驱动与应用的中间层NdisHook

    转载请标明是引用于 http blog csdn net chenyujing1234 欢迎大家拍砖 本工程是驱动vpcknt的一个封闭层而已 比较简单 一 导出的API接口分析 1 Start 1 加载驱动vpcknt sys vpckn
  • List转换String,String转List的几种方法

    一 List转String的方法 将一个Java集合List转换为String方法比较多 可以使用String join StringBuilder Stream流等方法 下面举几个常用的示例 1 使用String join 方法 impo
  • c51语言的指针分几类,- 第五课 C51变量

    sfr P1 0x90 这里没有使用预定义文件 sbit P1 0 P1 0 而是自己定义特殊寄存器 sbit P1 7 0x90 7 之前我们使用的预定义文件其实就是这个作用 sbit P1 1 0x91 这里分别定义P1端口和P10 P
  • react-router-dom v6的变化

    react router dom v6 原文地址 1 useNavigate替代useHistory 在v6版本useHistory被新hookuseNavigate代替 用法也发生的很大的变化 v5 import useHistory f
  • 如何画出频谱图 matlab

    如何画出频谱图 matlab matlab 代码 绘制出的图片 matlab 代码 fs 100 sample frequency Hz t 0 1 fs 10 1 fs 10 second span time vector x 1 3 s
  • R中prophet包说明文档(一)

    名称 自动预测过程 版本 0 2 1 日期 2017 11 08 描述 实现了一个时间序列的预测过程 基于能够拟合年度 周等周期以及假期等因素的非线性趋势的加法模型 模型要求至少一年以上的周期性历史数据 prophet模型对于缺失值 趋势突
  • PHP实现网站访问量计数器 两种方法

    1 原生 简单的网站访问量计数器实现 具体如下 首先说明思路 1 用户向服务器发出访问请求 2 服务器读取访问次数文件 1 向客户端返回 3 服务器保存新的浏览次数 4 新用户访问 重复123即可 解决方案 主要算法 1 数据文件 coun
  • 使用Clion 阅读/修改/注释 Linux 内核源码

    前言 其实 bootlin就是一个听不错的阅读源码的工具了 可以非常方便的帮我们查阅函数 宏的定义 引用等等 而且是基于浏览器 对我们本机的配置没有什么过高的要求 但是如果想要做一些注释 修改 那我们就要将源码下载到本地了 这个时候我们可能
  • 数据仓库灵魂30问之传统数仓和大数据数仓的异同?有哪些大的变化?

    不同点 特性 传统数仓 大数据数仓 数据存储位置 关系型数据库 HDFS 数据集市位置 MPP平台 HDFS 数据多样性 结构化数据 结构化数据 非结构化数据 半结构化数据 节点数量 几千 几千 几万 数据量 TB级别 PB级别 商业价值
  • 【转载】【NLP】使用 PyTorch 通过 Hugging Face 使用 BERT 和 Transformers 进行情感分析

    参考 https blog csdn net sikh 0529 article details 127950840 目的 用transformers加载自己的数据进行训练 然后做预测 知识点补充 什么是BERT BERT 在本文中介绍 代
  • Golang heap源码简单走读

    golang heap小根堆源码走读 heap概览 在golang中 通过heap给出了一个实现小根堆的接口 type Interface interface sort Interface Push x interface Pop inte
  • PCB结构和谐振(一)

    本文构建了包括不同的旋转角度 不同的叠层和两种不同布线方法 W 形和蛇形线 的测试手段 对应于这些设计的谐振是通过 VNA 测量获得的 然后 使用仿真方法来帮助我们理解这些实验结果 为了消除仿真与实验之间的差异 研究了由加工技术引起的一些实
  • git、KDiff3、Git Extensions

    Git git概念 Git 是一个开源的分布式版本控制系统 用于敏捷高效地处理任何或小或大的项目 1 下载git软件路径 https git scm com download win 2 点击安装 一直下一步直到finish git下载后的
  • 为什么sql里面not in后面的子查询如果有记录为NULL的,主查询就查不到记录

    为什么sql里面not in后面的子查询如果有记录为NULL的 主查询就查不到记录 原因很简单 SELECT FROM dbo TableA AS a WHERE a id NOT IN 2 NULL 等同于 SELECT FROM Tab
  • SSM概述

    SSM概述 基本概念 SSM Spring SpringMVC MyBatis Spring 简单来说 就是一个轻量级的控制反转 IOC 和面向切面 AOP 的容器框架 其中IOC可以说是SSM的核心之一 SpringMVC 分离了控制器
  • 技术至简-5:动画显示复指数信号的形状与物理意义

    复指数信号概念的理解是一个难点 1 数学表达式 它是由两个同频的正弦和余弦两个基本信号构成 2 复指数信号的内在组成 复指数是两路正交的基本信号 一路是余弦信号 另一路是正弦信号 3 复指数的物理含义 那么含有两路两路正交的基本信号的虚指数
  • 数组JAVA

    JAVA数组详情 什么是数组 数组就是 存储一组数据类型相同的数据元素 数组在内存中空间是连续的 长度初始好 就不能再做改变 数组是属于应用类型的 对象 所以也就可以即存储基本数据类型 还可以存储引用类型 数组的声明 int a 这是声明了