数组常用方法之复制、替换(填充)、比较、排序和搜索

一、数组的复制

Arrays.copyOf()方法是复制数组至指定长度。语法:int newArr[] = Arrays.copyOf(arr,3);

复制源数组中从下标0开始的3个元素到目的数组,从下标0的位置开始存储


import java.util.Arrays;
public class TestArray{
public static void main( String args[]){
int arr3[] = { 1, 2, 3, 4, 5, 6};
int a[]= Arrays. copyOf(arr3, 3);
for( int i = 0;i< a. length;i++){
System. out. println(a[i]);
}
}
}

结果是:1 2 3

二、数组的填充

Arrays.fill()方法。对数组中的元素进行替换。语法:Arrays.fill(arr,2,3,"bb"); 位置2包括位置3不包括替换值“bb”

有两种形式:一种形式是“fill(type []a,type b)”;表示把数组a的全部空间填充为b.

                       另一种形式是“fill(type a[],int key1,int key2,type b);” 表示把数组a从key1到key2的全部内容填充为b,但不包含key2的位置。


import java.util.Arrays;
public class TestArray{
public static void main( String args[]){
int arr3[] = { 1, 2, 3, 4, 5, 6};
Arrays. fill(arr3, 1, 3, 0);
for( int i = 0;i< arr3. length;i++){
System. out. println(arr3[i]);
}
}
}

结果是:1 0 0 4 5 6

三、数组的比较

Arrays.equals()方法。

实现比较的函数为equals(数组1,数组2)。如果两个数组的数据元素数量相同,相同位置上的数据元素又相等,则这两个数组想等,函数返回boolean值true,否则不相等,函数返回boolean值false。


import java.util.Arrays;
public class TestArray{
public static void main( String args[]){
int arr3[] = { 1, 2, 3, 4, 5, 6};
int arr4[] = { 1, 2, 3, 4, 5, 6};

int arr1[] = { 1, 2, 3, 4, 5, 6};
int arr2[] = { 1, 2, 3, 4, 5, 7};

boolean a= Arrays. equals(arr3,arr4);
boolean b= Arrays. equals(arr1,arr2);

System. out. println(a);
System. out. println(b);
}
}

结果是:ture  false


四、数组的排序

Arrays.sort()方法。

数组的排序指依据数组中的数据类型升序排序。该方法有两种参数格式:一是“sort(数组引用)”;二是“sort(数组引用,参数1,参数2)”。前者表示对整个数组升序排序,后者表示对数组中的一个范围内的元素排序,参数1是起始位置,参数2是截止位置,但不包含该位置。

import java.util.Arrays;
public class TestArray{
public static void main( String args[]){

int arr1[] = { 4, 7, 3, 2, 8, 1};
int arr2[] = { 4, 7, 3, 2, 8, 1};

Arrays. sort(arr1);
Arrays. sort(arr2, 0, 4);

for ( int i= 0;i< arr1. length;i++){
System. out. print(arr1[i]);
}
System. out. println( " ");

for ( int i= 0;i< arr2. length;i++){
System. out. print(arr2[i]);
}
}
}

结果是:123478     234781


五、数组的查找

Arrays.binarySearch().

数组的查找是在指定数据类型的数组中查找一个具体的元素,如在int型数组中查找一个整数,如果该整数存在,则输出该整数在数组中的位置。需要注意的是数组中元素的位置是从0开始计数的。如果该整数不存在则输出一个负值。


import java.util.Arrays;
public class TestArray{
public static void main( String args[]){

int arr1[] = { 4, 7, 3, 2, 8, 1};
int arr2[] = { 4, 7, 3, 2, 8, 1};

int a= Arrays. binarySearch(arr1, 3);
int b= Arrays. binarySearch(arr2, 9);

System. out. println(a);
System. out. println(b);
}
}

结果是:2 -7


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值