Arrays的常用方法

1.填充数组 将指定的元素放在指定的数组中

fill( int[] a, int val)

以int型数组为例,fill( int[] a, int val)  表示val将填充a数组的每一个元素

	public static void main(String[] args) {
      int[] a = new int[10];
      Arrays.fill(a,15);
      for(int i=0;i<a.length;i++){
    	  System.out.print(a[i]);
      }
	}

结果:

15 15 15 15 15 15 15 15 15 15


fill(int[] a,int fromIndex,int toIndex,int val)  将val插入到a数组的指定范围内


2.复制数组

a.使用System.arrayCopy() 函数

public static void main(String[] args) {
      int[] i = new int[7];
      int[] j= new int[10];
      Arrays.fill(i, 47);
      Arrays.fill(j,49);
      System.out.println("i="+Arrays.toString(i));
      System.out.println("j="+Arrays.toString(j));
      System.arraycopy(i, 0, j, 0, i.length);
      System.out.println("j="+Arrays.toString(j));
      //引用类型
      Integer[] u= new Integer[10];
      Integer[] v= new Integer[5];
      //添加值
      Arrays.fill(u, new Integer(47));
      Arrays.fill(v, new Integer(49));
      System.out.println("u="+Arrays.toString(u));
      System.out.println("v="+Arrays.toString(v));
      System.arraycopy(v, 0, u, u.length/2, v.length);
      System.out.println("u="+Arrays.toString(u));
      System.out.println("v="+Arrays.toString(v)); 
      System.out.println("u="+Arrays.toString(u));
	}


注意:如果复制的是对象数组,那么只是对象的引用,而不是对象本身的拷贝

3.数组比较

使用Arrays.equals(a,b)

public static void main(String[] args) {
      int[] i = new int[7];
      int[] j= new int[7];
      Arrays.fill(i, 47);
      Arrays.fill(j,47);
      System.out.println(Arrays.equals(i, j));
      i[2]=49;
      System.out.println(Arrays.equals(i, j));
      String[] strs1= new String[4];
      Arrays.fill(strs1, "Hi");
      String[] strs2= new String[]{new String("Hi"),new String("Hi"),
                                    new String("Hi"),new String("Hi")};
      System.out.println(Arrays.equals(strs1, strs2));
      User[] u1= new User[]{new User("a"),new User("b")};
      User[] u2= new User[]{new User("a"),new User("b")};
      System.out.println(Arrays.equals(u1, u2));
	}

注意: 对于引用类型,不但要数组的大小相同,并且每个元素也要相同,数组的大小相同的情况下,数组每个元素使用equals比较。

4.数组排序

 sort 函数

public static void main(String[] args) {
       int[] a = new int[]{12,23,1,3,7,2};
       Arrays.sort(a);
       System.out.println(Arrays.toString(a));
	}

此排序是按照升序排列


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值