java数组(二)

来源:互联网 发布:淘宝网修改手机号码 编辑:程序博客网 时间:2024/06/01 16:01

本文属于博主原创文字,更多精彩原创可以点此查看

就数组的最大值

  • 原理
    1. 假定数组的第一个元素就是最大值
    2. 通过循环从第二个元素开始依次和假定的最大值进行比较
    3. 如果找到了比假定的最大值大的数,就替换最大值

插入数字到指定位置

  • 原理
    1. 在元素组a的基础上将长度扩展1为,得到一个新数组b
    2. 把原来的数组里的元素拷贝到新数组去
    3. 确定插入数字的位置例如index
    4. 从新数组b的倒数第2个元素【b.length-2】直至index的位置一次往后挪位
    5. 最后把待插入的数插到b数组的index的位置

冒泡排序的原理

  • 原理

    1. N个数两两之间相互比较
    2. 使用二重循环,外层循环控制比较的轮数,内层循环控制每轮剩下的数当中比较的次数
    3. 如果有N个数,那么比较的轮数就为N-1次
    4. 如果有N个数,每一轮比较的次数就为N-i-1
    5. 两两之间相互比较,发现大小交换位置
    6. 二重循环结束,得到有序数组
  • 口诀

    1. N个数字来排队
    2. 两两相比小靠前
    3. 外层循环N-1
    4. 内层循环N-1-i

Arrays类的静态方法

  1. Arrays.tostring()方法

    将数组整体装换成一个字符串,用中括号[]括起来,数组元素之间用逗号隔开

  2. Arrays.sort()方法
    将数组进行升序排序,注意它仅能进行升序排列,不能进行倒序排列
  3. Arrays.equals(a, c)方法
    用来比较两个数组是否完全一样【长度和内容】如果完全一样则返回true,否则返回false
  4. Arrays.fill(d, 100)方法
    用来将一个数组填充成指定的值
  5. Arrays.copyOf(a, a.length);方法
    复制一个指定长度的数组给以新的数组
  6. Arrays.binarySearch(a, 24)方法

    在一个数组中查找指定的元素【在a数组里边查找24这个数】,返回元素在数组中下标位置,注意在调用这个方法前要先对数组进行升序排列【调用一下Arrays.sort()方法】

    • 注意:
    • 如果针对char类型的,排序是按照字母的ASCII码值进行升序排列
    • 如果针对String类型的,排序是按照字母的ASCII码值进行升序排列【如果碰到一样的,则依次比较第二个字母】

二维数组的定义与使用

  • 先声明再分配空间

    类型[][]数组名;
    int [][] a;
    数组名 = new 类型[M][N] (M表示多少行,N表示多少列)
    a = new int[4][6];

  • 声明的同时分配空间

    类型[][] 数组名=new 类型[M][N]; (M表示多少行,N表示多少列)

  • 注意:二维数组在分配空间的时候,最高维度的长度大小不能省略
    int[][] a=new int[5][];

  • 初始化赋值的两种方式

    int[][] a = { {1,2,3,4}, {2,2,2,2}, {3,3,3}};
    int[][] a = new int[][]{ {1,2,3,4}, {2,2,2,2}, {3,3,3}};
    注意:在[]里边不能指定数组的长度

本文属于博主原创文字,更多精彩原创可以点此查看

0 0