第一夜——数组与集合——Arrays

简介

大家好,我是平头哥。今天给大家分享的是java中的数组array。
java中的数组(array)是一种较高级的数据结构类型,它是相同类型变量的集合,可以使用共同的名字对它进行引用。数组可以是一维的,也可以是多维的,我们可以通过数组下标对其中的元素进行访问。

数组的使用

  • 给数组赋值。通过fill方法可以给数组中的某段元素赋上相同值。
  • 对数组排序。通过sort方法对数组中的某段元素排序。
  • 数组比较。通过equals方法比较两个数组,判断数组中的元素值是否相同。
  • 查找数组元素。通过binarySearch方法能对排过序的数组进行二分法查找。

实例代码

import java.util.Arrays;

/**
 * Created by MXi4oyu on 2018/11/4.
 */
public class learn_array {

    /**
     * 整型数组的输出
     * @param array 待输出的数组
     */
    public static void outputArray(int [] array){

        if (array!=null){

            for(int i=0;i

输出结果:

执行Arrays.fill(array0,1)后,array0中的值为:
1    1    1    1    1    
执行Arrays.fill(array0,2,4,8)后,array0中的值为:
1    1    8    8    1    
执行Arrays.sort(array1,2,7)后,array1中的值为:
7    8    3    3    5    6    12    4    
执行Arrays.sort(array1)后,array1中的值为:
3    3    4    5    6    7    8    12    
array0与array1是否相等:
false
array1与array2是否相等:
true
元素8在array1中的位置:6
元素9在array1中的位置:-8

源码解析

  • 使用Arrays的fill方法对数组赋值时,可以指定启始位置begin和终止位置end。这将只给下标在[begin,end)区间的数组元素赋值。注意:下标为end的元素不会被赋值。[begin,end)是半开区间。

  • 使用Arrays的sort方法对数组进行排序时,也可以设定启始位置和终止位置。对区间[begin,end)内的数组进行排序,下标为end的元素不参与排序。sort方法按升序进行排序。

  • 使用Arrays的binarySearch方法在数组中查找元素k时,使用的是二分法,即如果数组中间元素的值比k大时,则只从数组的前半部分元素中查找;否则只从数组的后半部分元素中查找,如此递归下去。因此,必须要求数组元素是按升序排序好的。如果找到了元素k,则返回它的下标值。如果有多个元素k,那么返回的结果可能是这些元素下标值的任意一个,并不一定是第k个元素的下标值。(平头哥表示尼玛,这有啥用?不解)

你可能感兴趣的:(第一夜——数组与集合——Arrays)