文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

数组常用方法总结

2023-08-30 19:06

关注

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);}

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

来源地址:https://blog.csdn.net/m0_63904107/article/details/132185805

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯