抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Arrays类

常用数组操作

操作 简介
copyOfRange 拷贝数组
toString 数组转为字符串
sort() 数组排序
binarySearch 搜索数组中的某一元素
equals 判断是否相同
fill 填充
  • copyOfRange(int[] original, int from, int to)
    • original表示源数组
    • from表示拷贝开始下标
    • to表示结束位置下标(不包含to位置)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.Arrays;

public class HelloWorld {
public static void main(String[] args) {
int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

int[] b = Arrays.copyOfRange(a, 0, 3); //0 <= i <3

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

}
//输出:18 62 68
}
  • toString(a)

    将数组a转为字符串

1
2
3
4
5
6
7
8
9
10
11
12
import java.util.Arrays;

public class HelloWorld {
public static void main(String[] args) {
int a[] = new int[] { 18, 62, 68, 82, 65, 9 };
String content = Arrays.toString(a);
System.out.println(content);

}
}

// 输出:[18, 62, 68, 82, 65, 9]
  • binarySearch(a, b)
    • a为数组,b为该数组中的一个元素
    • 使用binarySearch进行查找之前,必须使用sort进行排序;
      如果数组中有多个相同的元素,查找结果是不确定的
    • 注意输出位置从1开始,而不是0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.Arrays;

public class HelloWorld {
public static void main(String[] args) {
int a[] = new int[] { 18, 62, 68, 82, 65, 9 };

Arrays.sort(a);//用binarySearch前,必须先使用sort进行排序

System.out.println("数字 62 出现的位置:"+Arrays.binarySearch(a, 62));
}
}

//输出:
//数字 62 出现的位置:2

  • equals(a1, a2)
    • 判断a1, a2两个数组是否相同
    • 返回值为 boolean
1
2
3
4
5
6
7
8
9
10
11
12
import java.util.Arrays;

public class HelloWorld {
public static void main(String[] args) {
int a[] = new int[] { 18, 62, 68, 82, 65, 9 };
int b[] = new int[] { 18, 62, 68, 82, 65, 8 };

System.out.println(Arrays.equals(a, b));
}
}

//输出:false
  • fill(a, b)
    • 往数组a中填充元素b(如果a已经有值,则a中的所有值会被替换为b)
    • 无返回值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.util.Arrays;

public class HelloWorld {
public static void main(String[] args) {
int a[] = new int[10];

Arrays.fill(a, 5);

System.out.println(Arrays.toString(a));

}
}

//输出:[5, 5, 5, 5, 5, 5, 5, 5, 5, 5]

评论