java的Array工具类

本文介绍了Java中的Arrays工具类,详细讲解了如何使用该类进行数组到字符串的转换、数组排序、二分查找及数组到List的转换等操作,并通过实例展示了每种方法的具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

-----------------------java的Array工具类--------------------------

工具类Arrays

数组的工具类,这里的方法都是静态的

1.        把数组转换成字符串

2.        对任意数组排序

3.        对任意的数组做二分法的查找

4.        把数组转换成List

 

java.util
类 Arrays

java.lang.Object

  java.util.Arrays


public class Arrays

extends Object

此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。

除非特别注明,否则如果指定数组引用为null,则此类中的方法都会抛出 NullPointerException。

此类中所含方法的文档都包括对实现 的简短描述。应该将这些描述视为实现注意事项,而不应将它们视为规范的一部分。实现者应该可以随意替代其他算法,只要遵循规范本身即可。(例如,sort(Object[]) 使用的算法不必是一个合并排序算法,但它必须是稳定的。)

此类是 Java Collections Framework 的成员。

 

 

--------------------------------

例子:

package cn.tx.set;

 

import java.util.Arrays;

import java.util.List;

 

public class ArraysDemo {

 

   public static void main(String[] args) {

      int[] arr ={12,123,55,6,88,99,555,8445};

      //将数组转换成字符串

      arrayToString(arr);

     

      Person[] p = {new Person(1,12, "李昆鹏"),new Person(2,12, "李昆鹏")};

      arrayToString(p);

     

      //对数组进行排序

      //Arrays.sort(arr,1,3)对数组进行局部排序

      arraySort(arr);

     

      //对数组进行二分查找,前提必须排好升序

      System.out.println(binarySearch(arr, 88));

     

      // 把数组转换成List集合

      Integer[] arr1 = {6,12,123,555,666};

      List<Integer> list = Arrays.asList(arr1);

      System.out.println(list);

      //从数组转换过来的list不能添加和删除,但是可以修改

      //list.add(1231);

      //list.remove(12);

      list.set(2, 345);

      System.out.println(list);

     

     

   }

   /**

    * 将数组转换成字符串

    * @param array

    */

   public static void arrayToString(int[] array) {

      System.out.println(Arrays.toString(array));

   }

   /**

    * Person类数组转换成字符串

    * @param array

    */

   public static void  arrayToString(Person[] array) {

      System.out.println(Arrays.toString(array));

   }

  

   /**

    * 对数组进行升序排序

    * @param array

    */

   public  static  void  arraySort(int[] array) {

      //对对象进行排序的时候依照对象的compareTo方法进行的

      Arrays.sort(array);

      arrayToString(array);

   }

  

   /**

    * 使用二分查找法

    */

   public  staticint  binarySearch(int[] arr,intval) {

     

      return Arrays.binarySearch(arr, val);

     

   }

  

  

}

 

结果:

[12, 123, 55, 6, 88,99, 555, 8445]

[Person [id=1,age=12, name=李昆鹏], Person [id=2, age=12, name=李昆鹏]]

[6, 12, 55, 88, 99,123, 555, 8445]

3

[6, 12, 123, 555,666]

[6, 12, 345, 555,666]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值