数组常用方法总结

数组常用方法总结

  • 一.获取数组长度
    • 1.1 使用length
  • 二.数组转字符串
    • 2.1 Arrays是什么
    • 2.2 使用toString()
  • 三. 数组拷贝
    • 3.1 使用 copyOf()
    • 3.2 copyOfRange()
  • 四.数组排序
    • 4.1使用 sort()
  • 五. 数组逆序
  • 六. 判断两个数组是否相等
    • 6.1 使用equals()

一.获取数组长度

1.1 使用length

 public static void main(String[] args) {//求数组的长度int[] arr=new int[]{1,2,3,4,5,6};int length= arr.length;System.out.println(length);}

注意:
获取数组的长度,使用数组名.length
获取字符串长度,使用字符串名.length()

二.数组转字符串

2.1 Arrays是什么

Arrays是操作数组相关的工具类。
Java 中提供了 java.util.Arrays 包, 其中包含了一些操作数组的常用方法.

2.2 使用toString()

import java.util.Arrays;public class Test {public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5,6};//数组转字符串System.out.println(Arrays.toString(arr));}
}

执行结果如下:
在这里插入图片描述

使用这个方法后续打印数组就更方便一些.

三. 数组拷贝

public static void main(String[] args) {int[] arr = {1,2,3,4,5};int[] newArr = arr;newArr[0] = 10;System.out.println("arr: " + Arrays.toString(arr));}

执行结果如下:

在这里插入图片描述
示意图:
在这里插入图片描述

newArr和arr引用的是同一个数组, 因此newArr修改空间中内容之后,arr也可以看到修改的结果。

3.1 使用 copyOf()

import java.util.Arrays;public class Test {public static void main(String[] args) {int[] arr = {1,2,3,4,5};int[] newArr = Arrays.copyOf(arr,arr.length);newArr[0] = 10;System.out.println("arr: " + Arrays.toString(arr));System.out.println("newArr: "+Arrays.toString(newArr));}
}

执行结果如下:
在这里插入图片描述
示意图:
在这里插入图片描述

使用Arrays中copyOf方法完成数组的拷贝:
copyOf方法在进行数组拷贝时,创建了一个新的数组,arr和newArr引用的不是同一个数组。 因此newArr修改其引用数组中内容时,对arr没有任何影响。

3.2 copyOfRange()

public static <T> T[] copyOfRange(T[] original, int from, int to)

这个方法可以用来截取数组的一部分,并将其复制到一个新的数组中。

四.数组排序

4.1使用 sort()

public static void main(String[] args) {int[] arr={1,5,3,4,6,2};Arrays.sort(arr);System.out.println(Arrays.toString(arr));}

执行结果如下:
在这里插入图片描述

sort()可以将数组正向排序

五. 数组逆序

思路:

  • 设定两个下标,分别指向第一个元素和最后一个元素,交换两个下标位置上的元素。
  • 让前一个下标自增,让后一个下标自减,循环继续即可。
  public static void main(String[] args) {int[] arr={1,2,3,4,5};reverse(arr);System.out.println(Arrays.toString(arr));}public static void reverse(int[] arr){int left=0;int right=arr.length-1;while (left<right){int tmp=arr[left];arr[left]=arr[right];arr[right]=tmp;left++;right--;}}

执行结果如下:
在这里插入图片描述

Arrays类中没有提供直接逆序的方法

六. 判断两个数组是否相等

6.1 使用equals()

public static void main(String[] args) {int[] arr1= {1,2,3,4,5};int[] arr2= {1,2,3,4,5};boolean flg = Arrays.equals(arr1,arr2);System.out.println(flg);
}

执行结果如下:
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Command Injection

Command Injection Command Injection&#xff0c;即命令注入&#xff0c;是指通过提交恶意构造的参数破坏命令语句结构&#xff0c;从而达到执行恶意命令的目的。PHP命令注入攻击漏洞是PHP应用程序中常见的脚本漏洞之一。 PHP命令注入漏洞的函数 systme()、exec()、shell_ex…

案例18 基于Spring Boot+MyBatis的图书信息维护案例

一、案例需求 基于Spring BootMyBatis实现图书信息的新增、修改、删除、查询功能&#xff0c;并实现MySQL数据库的操作。 MySQL数据库创建图书表&#xff08;t_book&#xff09;&#xff0c;图书表有主键、图书名称、图书类别、作者、出版社、简介信息。 二、数据初始化 创建…

图片展示 JAVA

利用Java中提供的 ImageIcon类和JLabel类加载与显示电脑路径中的图片&#xff0c;并最终展示在JFrame类窗口中。 代码&#xff1a; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel;public class Main extends JFrame {//继承父类Jframe…

【JavaEE进阶】SpringBoot项目的创建

文章目录 一. SpringBoot简介1. 什么是SpringBoot?2. SpringBoot的优点 二. SpringBoot项目创建1. 使用IDEA创建2. 使用网页创建SpringBoot项目 三. 运行SpringBoot项目 一. SpringBoot简介 1. 什么是SpringBoot? Spring Boot 是一个用于快速构建基于 Spring 框架的应用程序…

7.11 Java方法重写

7.11 Java方法重写 这里首先要确定的是重写跟属性没有关系&#xff0c;重写都是方法的重写&#xff0c;与属性无关 带有关键字Static修饰的方法的重写实例 父类实例 package com.baidu.www.oop.demo05;public class B {public static void test(){System.out.println("这…

SpringBoot案例-部门管理-删除

目录 查看页面原型&#xff0c;明确需求 页面原型 需求 阅读接口文档 思路分析 功能接口开发 控制层&#xff08;Controllre类&#xff09; 业务层&#xff08;Service类&#xff09; 持久层&#xff08;Mapper类&#xff09; 接口测试 前后端联调 查看页面原型&a…

爬虫逆向实战(十七)--某某丁简历登录

一、数据接口分析 主页地址&#xff1a;某某丁简历 1、抓包 通过抓包可以发现数据接口是submit 2、判断是否有加密参数 请求参数是否加密&#xff1f; 通过查看“载荷”模块可以发现有一个enPassword加密参数 请求头是否加密&#xff1f; 通过查看请求头可以发现有一个To…

FPGA 之 xilinx DDS IP相位控制字及频率控制字浅析

浅析相位环在Xilinx DDS中的理解 本文仅为个人理解之用; 相关仿真结果如下:

Hyper-V增加桥接网络设置(其他方式类同)

点击连接到的服务器&#xff0c;右单击或者右边点击“虚拟交换机管理器” 选择网络种类 配置虚拟交换机信息 外部网络选择物理机网卡设备

NPM与外部服务的集成(上)

目录 1、关于访问令牌 1.1 关于传统令牌 1.2 关于粒度访问令牌 2、创建和查看访问令牌 2.1 创建访问令牌 在网站上创建传统令牌 在网站上创建粒度访问令牌 使用CLI创建令牌 CIDR限制令牌错误 查看访问令牌 在网站上查看令牌 在CLI上查看令牌 令牌属性 1、关于访问令…

设计模式之原型模式Prototype的C++实现

1、原型模式提出 在软件功能设计中&#xff0c;经常面临着“某些结构复杂的对象”的创建工作&#xff0c;且创建的对象想拥有其他对象在某一刻的状态&#xff0c;则可以使用原型模型。原型模型是通过拷贝构造函数来创建对象&#xff0c;并且该对象拥有其他对象在某一刻的状态。…

小程序CSS button按钮自定义高度之后不居中

问题&#xff1a; 按钮设置高度后不居中 <view><button class"btn1" size"">Save</button> </view> page {font-size: 30rpx; }.btn1 {margin-top: 100rpx;height: 190rpx;background: linear-gradient(90deg, #FF8A06, #FF571…