java中的数组工具类Arrays

数组工具类Arrays

1. 概述

java.util.Arrays是一个与数组相关的工具类,里面提供了大量的静态方法,用来实现数组相关的操作,是为数组服务滴,下面将分别介绍 toString 方法和 sort 方法

2. toString方法

2.1 格式
public static String toString(数组);
将参数数组变成字符串(字符串默认的格式:[元素1,元素2,元素3.....]
2.2 代码演示
public class DemoArrys {
    public static void main(String[] args) {
        //随便创一个数组,什么类型都OK,那就创立一个int数组
        int[] intArray = {10, 20, 30};
        //将int数组传进静态方法Arrays.toString,并用一个字符串变量str接收
        String intStr = Arrays.toString(intArray);
        //打印得到的字符串
        System.out.println(intStr);  //[10, 20, 30]
    }
}

3. sort方法

3.1 格式
public static void sort(数组);
按照默认升序(从小到大)对数组的元素进行排序
3.2 代码演示
public class DemoArrys {
    public static void main(String[] args) {
        //创一个int数组,字符串数组也可以
        int[] intArray = {20, 10, 30, 5};
        //将int数组传进静态方法Arrays.sort进行从小到大的排序
        Arrays.sort(intArray);
        //将排序好的int数组转换成字符串
        String intStr = Arrays.toString(intArray);
        System.out.println(intStr);  //[5, 10, 20, 30]

        System.out.println("---------------------------");

        //创立一个String类的数组
        String[] StrArray = {"aaa", "cbc", "bdc"};
        //将数组传进Arrays.sort方法里面
        Arrays.sort(StrArray);
        //将数组转换成字符串的形式,不能直接System.out.println(StrArray); 这样打印的是地址
        String StrSort = Arrays.toString(StrArray);
        //打印排序结果
        System.out.println(StrSort);  //[aaa, bdc, cbc]
    }
}
3.3 注意事项
  1. 如果比较的是数值,sort默认按照升序从小到大
  2. 如果是字符串,sort默认按照字母升序,字符间比较的是在ASCII码表上的数值
  3. 如果是自定义的类型,那么这个自定义的类需要有Comparable或者Comparator接口的支持

4. 小练习

4.1 题目

请使用Arrays相关的API,将一个随机字符串中的所有字符升序排列,并倒序打印

4.2 思路

将字符串转成字符数组,然后排序,最后for循环倒序打印

4.3 代码
public class Practice {
    public static void main(String[] args) {
        //新建一个字符串,随便初始化一些什么字符
        String str = "abadbchabsjcasgsdjeifgzx";
        //将字符串转成char数组
        char[] charsArray = str.toCharArray();
        //对char数组进行排序
        Arrays.sort(charsArray);

        //倒序输出,用System.out.print()方法,不需要自动换行
        //小技巧,在2018.3.5版本Idea编译器上,只需charsArray.forr,然后按Alt + Ctrl + 空格就           会自动补全
        for (int i = charsArray.length - 1; i >= 0; i--) {
            System.out.print(charsArray[i]);  //结果是:zxsssjjihggfeddccbbbaaaa
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值