7.数组

2021-07-14 22:08

阅读:421

  • 查(各种查法)
    1) 遍历数组(查所有数据)
    1. 使用JDK提供的方法(拿来主义:万能的百度)
    1. Arrays类的toString(数组名称)方法,即可输出数组中所有数据
    技术分享图片

     2. 自己编码(还是提倡吧,有益大脑,实际开发就拿来主义吧!)
         1. 依次获取数组中的数据,对于这种重复性操作可以使用循环来完成
         2. 语法
             ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151407315-126747851.png)

    2) 找出极值(查最大值与最小值)
    1. 使用JDK提供的方法(拿来主义:万能的百度)
    Arrays.steam(数组名).max()或.min().getAsInt()
    技术分享图片

          Arrays.sort(数组名);然后根据下标找极值,缺点是"改变了数组中元素顺序"
             ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151431396-377784108.png)
    
     2. 自己编码(先假定数组中下标为0的为极值,然后依次与其它数比较,找到真正极值后重新赋值给变量即可)
         ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151436443-1269879976.png)

    3) 排序(升序)
    1. 使用JDK提供的方法(拿来主义:万能的百度)
    Arrays.sort(数组名称),需要导入java.util.Arrays
    技术分享图片

     2. 自己编码
          选择排序(选择数组中第一个数,然后依次与后面的数比较,把最小的放前面,最大放后面)
             ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151512161-1987488509.png)
    
          冒泡排序(相信元素比较,小的排前,大的排后)
             ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151516791-392512180.png)
    
    
             ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151523112-1052283852.png)

    4) 反转(降序)
    1. 如此简单,没有API,自己写吧
    1. 使用循环从一个数组中取出,然后写入另一个数组中,注意下标的变换(有两种写法)
    技术分享图片

     2. 如果,反转前是升序,那么反转后就是降序了

    5) 查找数组中某元素的下标(某元素是否存在)
    1. 使用API(是排序后的下标,但是可以排序是否存在该元素)
    技术分享图片

     2. 自己编码(使用循环依次遍历)
         ![](https://images2018.cnblogs.com/blog/1009428/201808/1009428-20180826151543198-1424150428.png)

    6) 其它操作
    1. 将指定数组的指定范围复制到一个新数组。 包含起始位置但不包含结束位置
    1. Arrays.copyOfRange(int[] arr,int from,int to);它的返回值是一个数组
    2. 技术分享图片


  • 评论


    亲,登录后才可以留言!