JAVA----Arrays类中的一些常用功能

1.给数组赋值:通过fill方法

package study;
import java.util.Arrays;
public class ArrayDemo03 {
public static void main(String[] args) {
int[] a={1,42,534,64,734,5};
Arrays.fill(a,0,3,0);//表示从fromIndex(前下标)扩展到 toIndex(后下标)排他,如果fromIndex==toIndex,则填充范围为空。(val,要填充的值)
System.out.println(Arrays.toString(a));//toString是Arrays类里的数组输出方法
}
}

运行结果:

[0, 0, 0, 64, 734, 5]

进程已结束,退出代码0

 

2.给数组排序:通过sort方法,升序

import java.util.Arrays;

public class ArrayDemo03 {
public static void main(String[] args) {
int[] a={1,42,534,64,734,5};
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
}
运行结果:

[1, 5, 42, 64, 534, 734]

进程已结束,退出代码0

3.比较:通过equals方法,与字符串相比较

package study;

import java.util.Arrays;

public class ArrayDemo03 {
public static void main(String[] args) {
int[] a={1,42,534,64,734,5};
int[] b={1,42,534,64,734,5};
System.out.println("a==b "+(a==b));
System.out.println("Arrays.equals(a,b) "+Arrays.equals(a,b));
System.out.println("!Arrays.equals(a,b) "+!Arrays.equals(a,b));
}
}
运行结果:

a==b false
Arrays.equals(a,b) true
!Arrays.equals(a,b) false

进程已结束,退出代码0

4.查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作package study;


import java.util.Arrays;

public class ArrayDemo03 {
public static void main(String[] args) {
int[] a={1,42,534,64,734,5};
Arrays.sort(a);
System.out.println(Arrays.toString(a));
int index=Arrays.binarySearch(a,42);
System.out.println("关键字42的返回值:"+index);
index=Arrays.binarySearch(a,2);
System.out.println("关键字2的返回值:"+index);
index=Arrays.binarySearch(a,64);
System.out.println("关键字64的返回值:"+index);
index=Arrays.binarySearch(a,249);
System.out.println("关键字249的返回值是:"+index);
index=Arrays.binarySearch(a,2387);
System.out.println("关键字2387的返回值是:"+index);
System.out.println();
index=Arrays.binarySearch(a,0,3,5);
System.out.println("关键字5在数组下标[0,3)的返回值是:"+index);
index=Arrays.binarySearch(a,0,3,7);
System.out.println("关键字7在数组下标[0,3)的返回值是:"+index);
index=Arrays.binarySearch(a,0,3,64);
System.out.println("关键字64在数组下标[0,3)的返回值是:"+index);
index=Arrays.binarySearch(a,0,3,783);
System.out.println("关键字783在数组下标[0,3)的返回值是:"+index);
}
}
运行结果:
index:0 1 2 3 4 5
length:1 2 3 4 5 6
[1, 5, 42, 64, 534, 734]

关键字42的返回值:2
关键字2的返回值:-2
关键字64的返回值:3
关键字249的返回值是:-5
关键字2387的返回值是:-7

关键字5在数组下标[0,3)的返回值是:1
关键字7在数组下标[0,3)的返回值是:-3
关键字64在数组下标[0,3)的返回值是:-4
关键字783在数组下标[0,3)的返回值是:-4

进程已结束,退出代码0

1.找到的情况下:如果key在数组中,则返回搜索值的索引。
2.找不到的情况下:

[1] 搜索值不是数组元素,且在数组范围内,从1开始计数,得“ - 插入点索引值”;
[2] 搜索值不是数组元素,且大于数组内元素,索引值为 – (length + 1);
[3] 搜索值不是数组元素,且小于数组内元素,索引值为 –1。

 

 





posted @ 2022-02-24 17:56  青弦c  阅读(80)  评论(0)    收藏  举报