java Arrays类常用方法及实例

*## Arrays类介绍
Arrays类是java.util包中常用来操作数组的一个非常重要的类。使用时要把import java.util.Arrays;导入。

Arrays常用方法介绍

1)static String toString(int[ ] a)用来把指定数组内容打印成字符串形式。

//首先声明一个数组
int[] num={1,2,3,4,5};
String s=Arrays.toString(num);
System.out.println(s);  //打印后的结果为:[1, 2, 3, 4, 5]

toString()方法是一个在打印数组结果时一个非常使用的方法,此方法省去了用循环遍历数组的麻烦。
2)static boolean equals (int[ ] a, int[ ] a2): equals方法用来比较两个数组是不是相等。此方法的返回值是一个布尔值,由于这是一个static静态方法可以直接Arrays.点出equals方法。

int[] arr1={10,20,30,40,50};
int[] arr2={10,20,30,40,50};
int[] arr3={10,20,30,40};
boolean result1=Arrays.equals(arr1,arr2);
boolean result2=Arrays.equals(arr1,arr3);
System.out.println(result1);//结果为true
System.out.println(result2);//结果为false

代码运行后的结果分别为true和false。
3)static void sort (int[ ] a)用来进行数组的升序。此方法没有返回值可以直接通过Arrays点出。

//先定义长度为5的整形数组
int[] num={55,42,12,86,91};
//调用方法进行升序
Arrays.sort(num);
System.out.println(Arrays.toString(num));//结果为:[12, 42, 55, 86, 91]

这个方法是一个非常方便进行升序的方法。单是Arrays类里没有降序的方法,需要自己写出这个方法,这里给大家一个参考
创建一个降序方法

//创建降序方法
public class jiangxu {
	static void jiangxu(int[] a){
		for(int i=0;i<a.length-1;i++){
			for(int j=0;j<a.length-1-i;j++){
				if(a[j]<a[j+1]){
					int alt=a[j+1];
					a[j+1]=a[j];
					a[j]=alt;
				}
			}
		}
	}
}
public static void main(String[] args) {	
	//声明一个数组
	int[] nums={12345};
	jiangxu.jiangxu(nums);
	System.out.println(Arrays.toString(nums));//结果为:[5,4,3,2,1]
 }

上面讲述了一个创建一个降序的方法方法不唯一,仅供参考。
4)static void fill (int [ ] a,int n) :fill方法是一个没有返回值的方法,可以把整形数值n分配给数组a中的每一个元素。

//声明数组num[]
int[] nums={1,2,3,4,5};
Arrays.fill(nums,6);
System.out.println(Arrays.toString(nums));//结果为:[6, 6, 6, 6, 6]

从结果中可以看出数组nums中全部元素全部替换为6
5)static int [ ] copyOf (int [ ] a , n): copyOf方法则是把原数组复制成新长度的数组,第一个参数是原数组,第二个参数则是新数组的长度,返回值是一个下面将会以两种方式进行演示

int[] nums={1,2,3,4,5};
//把原数组变成长度为3的新数组
int[] newNums1=Arrays.copyOf(nums,3);
System.out.println(Arrays.toString(newNums1));//结果为:[1, 2, 3]
//把原数组变成长度为7的新数组
int[] newNums2=Arrays.copyOf(nums,7);
System.out.println(Arrays.toString(newNums2));//结果为:[1, 2, 3, 4, 5, 0, 0]

我们从结果中可以看出单使用copyOf方法创造出的新数组长度小于原数组时,新数组元素只显示到新定义的长度位置。但是新数组长度大于原数组时多出来的元素会用0补上。

6)static int binarySearch ( int [ ] a ,int n) : binarySearch方法的用法是查找某个元素在数组中的位置(数组下标),返回的是所要查询元素的下标,但是这个方法有个前提。(前提是数组已经升序排好!!)

//先声明一个长度为5乱序的数组
int[] nums={95,85,12,94,125};
//进行数组的升序
Arrays.sort(nums);
System.out.println(Arrays.toString(nums));//打进数组:[12, 85, 94, 95, 125]
//查找94的数组下标
int index1=Arrays.binarySearch(nums, 94);
System.out.println(index1); //查询的结果为:2 ,也就是说94元素的下标是2
//但是我们找一下数组中没有的元素,比如1
int index2=Arrays.binarySearch(nums, 1);
System.out.println(index2);//如果输入原数组之外的数字将会随机输出一个负数

这样就算是详细的讲了binarySearch方法的用法

以上就是java中Arrays类中常用方法的详细解释说明了
觉得有帮助的可以帮我点一个赞我^ ^
感谢阅读

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值