Java Arrays常用方法总结

package arrays;


import java.util.Arrays;
import java.util.Comparator;
import java.util.List;

/**
 * Arrays常用方法,很多方法必须是Integer[] ,int[] 会报错
 * 都是静态方法,使用类名Arrays.直接调用
 */
public class TestArrays {
   public static void main(String[] args) {
      Integer[] arr = {7,4,6,3,8};

      //1、显示数组信息 Arrays.toString
      System.out.println(Arrays.toString(arr));

      //2、默认排序,升序 Arrays.sort
      Arrays.sort(arr);
      System.out.println(Arrays.toString(arr));

      //3、也可以按自己的比较规则定制排序,通过给sort传入一个compator接口的实现类(可使用匿名内部类)
      //  public static <T> void sort(T[] a, Comparator<? super T> c)
      //注意泛型只能接收包装类
      Arrays.sort(arr,new Comparator<Integer>(){ //底层用的是binarySort方法

         @Override
         public int compare(Integer o1, Integer o2) {
            return o2 - o1 ; //o1 - o2是从小到大,o2 - o1是从大到小
         }
      });
      System.out.println(Arrays.toString(arr));

      //4、如果数组已经有序,可以使用Arrays.binarySearch方法查找
      System.out.println("查找的结果是:" + Arrays.binarySearch(arr,6));

      //5、拷贝数组,Arrays.copyOf(),注意用int[]接收会报错,第二个参数是新数组的长度
      Integer[] newArr = Arrays.copyOf(arr, 5);
      System.out.println(Arrays.toString(newArr));

      //6、数组填充 Arrays.fill
      int[] arr2 = new int[7]; //数组是有默认值的
      Arrays.fill(arr2,-1);
      System.out.println(Arrays.toString(arr2));

      //7、比较两个数组内容是否完全一致 Arrays.equals
      int[] arr3 = {1,2,3};
      int[] arr4 = {1,2,3};
      System.out.println(Arrays.equals(arr3, arr4));

      //8、将一组值转换成List , Arrays.asList方法,默认生成的是Arrays下的内部类类 ArrayList
      List<Integer> list = Arrays.asList(arr);
      List<Integer> list2 = Arrays.asList(1,2,3,4,5); //也可以接收多个整型

      System.out.println(list.toString());
      System.out.println(list2.toString());

   }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值