Arrays类常见方法

目录
1、Arrays类介绍
2、常用方法

一、Arrays类介绍

  • 此类包含用来操作数组(排序、搜索等)的各种方法,同时还包含一个允许将数组作为列表来查看的静态工厂。
  • 除非特别说明,否则如果指定数组引用为null,则此类中的方法都会抛出NullPointerException。

二、常用方法

1、Arrays.fill()

public static void main(String[] args) {
        int[] arr = new int[5];
        /**
         * 1、Arrays.fill()  填充数组
         */
        Arrays.fill(arr,4);
        /**
         * 2、Arrays.toString()
         * 将数组中的内容全部打印出来
         */
        String str = Arrays.toString(arr);
        System.out.println(str);

    }

输出:
在这里插入图片描述
2、Arrats.fill(指定位)

public static void main(String[] args) {
        int[] arr = new int[5];
        /**
         * 3、Arrays.fill()
         * 将指定数组中的第2位开始,到第4位(不包括)赋值为8
         */
        Arrays.fill(arr,2,4,8);
        String str = Arrays.toString(arr);
        System.out.println(str);
    }

输出:
在这里插入图片描述
3、排序
1)数字排序

/**
         * 1、数字排序
         */
        int[] arr1 = new int[]{12,3,8,0,-4};
        System.out.println("未排序前数组内容:");
        String s1 = Arrays.toString(arr1);
        System.out.println(s1);
        Arrays.sort(arr1);
//        System.out.println(arr1.toString());//打印的是数组地址
        String str = Arrays.toString(arr1);
        System.out.println("排序后数组内容:");
        System.out.println(str);
        System.out.println("-----------");

输出:
在这里插入图片描述
2)字符串排序

/**
         * 2、字符串排序,先大写,后小写
         */
        String[] str1 = new String[]{"a","b","B","A","3","S"};
        Arrays.sort(str1);
        String str2 = Arrays.toString(str1);
        System.out.println(str2);

输出:
在这里插入图片描述
3)严格按照字母表排序

/**
         * 3、严格按照字母表进行排序,忽略大小写
         */
        Arrays.sort(str1,String.CASE_INSENSITIVE_ORDER);
        System.out.println(Arrays.toString(str1));

输出:
在这里插入图片描述
4)反向排序

/**
         * 4、反向排序
         */
        Arrays.sort(str1, Collections.reverseOrder());
        System.out.println(Arrays.toString(str1));

输出:
在这里插入图片描述
4、比较

/**
         * 4、比较
         * Arrays重写了equals方法,比较的是里边的元素是否相等
         */
        int[] arr2 = new int[]{1,2,3};
        int[] arr3 = new int[]{1,2,3};
        System.out.println(Arrays.equals(arr2,arr3));
        System.out.println(arr3.equals(arr2));

输出:
在这里插入图片描述
5、截取字符串

/**
     * 截取数组
     * Arrays.copeOf()
     * Arrays.copeOfRange()
     */
    public static void main(String[] args) {
        int[] arr = {10,20,30,40,50};
        /**
         * 1、截取arr数组的3个元素赋值给arr1
         */
        int[] arr2 = Arrays.copyOf(arr,3);
        String str = Arrays.toString(arr2);
        System.out.println(str);
        /**
         * 2、从2开始截取到第6位,不包括6,缺失的用0填充
         */
        int[] arr3 = Arrays.copyOfRange(arr,2,6);
        String str3 = Arrays.toString(arr3);
        System.out.println(str3);

输出:
在这里插入图片描述
6、数组下标

int i =Arrays.binarySearch(arr,50);
        System.out.println("数组arr中50这个数的下标为:"+i);

输出:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值