数组进阶Java

数组进阶
    System.out.println(Arrays.toString(names));
    
    ArrayList : 容器类型
        特点 : 可以存储重复数据,有序的,可以根据索引进行操作的,长度可以根据需求对数据增删动态的进行改变
        使用 :
            1.创建ArrayList对象
             2.通过方法操作集合
        
    HashSet : 容器类型
        特点 : 不能存储重复数据(去重),无序的,无能根据索引操作,长度可以根据需求对数据增删动态的进行改变
        
    二维数组 : 了解
        数组中存放数组
         声明 :
             数据类型[][] 数组名;
        初始化 :
            动态初始化 : 
                先创建数组,然后再赋值
                数据类型[][] 数组名 = new 数据类型[外层二维数组长度][内层每一个一维数组长度]; 
                     -->外层的二维数组与内层一维数组同时创建
                内层的每一个一维数组长度固定
                数据类型[][] 数组名 = new 数据类型[外层二维数组长度][];
                 二维数组名[外层二维数组长度] = 一维数组的创建;
            静态初始化 :
                 数据类型[][] 数组名 = new 数据类型[][]{{值列表},{值列表},{值列表}....};
         操作 :
            二维数组名[外层二维的索引][内层一维的索引]
    Arrays 工具类:
         操作数组功能的工具类
            static String toString(int[] a)
            返回指定数组内容的字符串表示形式。
                
            static String deepToString(Object[] a)
            返回指定数组的“深层内容”的字符串表示形式。
                
            static boolean equals(int[] a, int[] a2)
              如果两个指定的整数数组彼此相等,则返回true 。
                
            static boolean equals(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
            如果指定范围内的两个指定整数数组彼此相等,则返回 true。 注意 : 结束索引位置不包含
                
            static boolean deepEquals(Object[] a1, Object[] a2)
            如果两个指定的数组彼此深度相等,则返回true 。
                
            static void sort(int[] a)
            将指定的数组按数字升序排序。
                
            static void sort(int[] a, int fromIndex, int toIndex)
            将数组的指定范围按升序排序。
                
            static int binarySearch(int[] a, int key)
            使用二进制搜索算法在指定的整数数组中搜索指定的值。  前提使用要求先升序排序   ,如果不存在返回-插入点-1
                
            static void fill(int[] a, int val)
            将指定的 int 值分配给指定的 int 数组的每个元素。
            static void fill(int[] a, int fromIndex, int toIndex, int val)
            将指定的 int 值分配给指定 int 数组的指定范围的每个元素。
                
    Arrays 工具类中数组拷贝相关方法
        static int[] copyOf(int[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。
            original : 原数组
            newLength : 新数组长度
            newLength = original.length  拷贝
            newLength < original.length  截取
             newLength > original.length  填充
            特点 :
                新数组在copyOf方法内部创建
                拷贝数据默认从原数组索引为0位置开始拷贝
        static int[] copyOfRange(int[] original, int from, int to) 将指定数组的指定范围复制到新数组中。
            original 原数组
            from : 起始索引
            to : 结束索引
            特点 :
                新数组在copyOfRange方法内部创建
                可以拷贝原数组指定索引范围内的数据
        static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)将指定源数组中的数组从指定位置开始复制到目标数组的指定位置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值