Java由浅入深细数数组的操作下

 更新时间:2022年04月27日 08:32:30   作者:星鸦wyk  
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。Java 语言中提供的数组是用来存储固定大小的同类型元素

上一篇介绍完一维数组后,我们来看二维数组

1.二维数组的存储

在C语言中我们说过:二维数组可以看成是特殊的一位数组,比如int arr[2][3],arr可以看成由两个元素组成,即arr[0]和arr[1],arr[0]和arr[1]各自又有三个元素,这句话在Java中同样适用,一维数组中arr存储的是一个地址,二维数组中则是多个地址,以上面的arr数组为例,其在JVM中的存储如下:

2.二维数组的定义和初始化

和一维数组类似,二维数组的定义和初始化同样有三种:

int[][] arr1={{1,2,3},{4,5,6}};
int[][] arr2=new int[][] {{1,2,3},{4,5,6}};
int[][] arr3=new int[2][3];    //同样数组元素的值为0

3.打印二维数组

使用的依旧是在一维数组中使用的方法

  • 嵌套for循环

需要注意的是,此时arr.length的值表示的是行数,arr[i].length的值是第i行的数组有多少个元素,即列数

  • foreach

foreach语句依旧可以使用,同样是嵌套的foreach,使用方法如下图:

  • Arrays.deepToString()

 Arrays.toString()只能作用于一维数组,二维数组打印出来的是处理后的地址

所以使用 Arrays.deepToString()将二维数组转换为字符串

4.不规则二维数组

Java中的二维数组每一行都可以单独指定列数,具体操作如下:

5.Arrays中常用的方法

  • Arrays包中有很多操作数组的方法,在这对其常用的一些方法进行总结 
  • Arrays.toString():将一维数组内容转换成字符串
  • Arrays.deepToString():将二维数组内容转换成字符串
  • Arrays.copyOf():拷贝数组,有两个参数,分别是要拷贝的数组的名称和拷贝的长度,返回值是数组
  • Arrays.copyOfRange():拷贝数组,可设定起始和结束位置,两端取值是左闭右开
  • Arrays.binarySearch():数组中二分查找搜索指定值,找到返回值的下标,没有则返回负数
  • Arrays.fill():填充数组内容,可以选择局部填充或全部填充Arrays.sort():对数组进行排序,排序方式是升序

数组内容就到此结束,完

相关文章

  • Java多线程文件分片下载实现的示例代码

    Java多线程文件分片下载实现的示例代码

    这篇文章主要介绍了Java多线程文件分片下载实现的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 基于TCP通信丢包原因总结(推荐)

    基于TCP通信丢包原因总结(推荐)

    下面小编就为大家带来一篇基于TCP通信丢包原因总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • java 排序算法之选择排序

    java 排序算法之选择排序

    本文主要讲解了java 排序算法之选择排序,选择排序是最简单直观的一种算法,想要了解相关知识的朋友快来看一看这篇文章吧
    2021-09-09
  • JAVA如何定义构造函数过程解析

    JAVA如何定义构造函数过程解析

    这篇文章主要介绍了JAVA如何定义构造函数过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • spring的@Transactional注解用法解读

    spring的@Transactional注解用法解读

    这篇文章主要介绍了spring的@Transactional注解用法解读,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • SpringBoot深入刨析数据层技术

    SpringBoot深入刨析数据层技术

    这篇文章主要介绍了SpringBoot数据层技术的解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Java并发Lock接口实现示例详解

    Java并发Lock接口实现示例详解

    这篇文章主要为大家介绍了Java并发Lock接口,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 详解在springmvc中解决FastJson循环引用的问题

    详解在springmvc中解决FastJson循环引用的问题

    本篇文章主要介绍了在springmvc中解决FastJson循环引用的问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Java内存结构和数据类型

    Java内存结构和数据类型

    本文重点给大家介绍java内存结构和数据类型知识,非常不错,具有参考借鉴价值,需要的朋友参考下
    2016-12-12
  • 举例讲解Java中的Stream流概念

    举例讲解Java中的Stream流概念

    这篇文章主要介绍了举例讲解Java中的Stream流概念,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-09-09

最新评论