zoukankan      html  css  js  c++  java
  • 数组

    一,一维数组

      数组是用来存储一组相同数据类型数据的数据结构。当数组初始化完成后,Java为数组在内存中分配一段连续的空间,此时数组空间固定,长度就不在发生改变。即使数组中没有保存数据,数组所占空间依然存在。

      1,数组声明 数据类型 数组(对象)名;

      2,数组对象创建 对象名=new 数据类型[长度]

      3,数组元素赋值 对象名[下标]=值;

      4,数组使用 遍历

      ★数组声明三方法:

        1.数据类型[] 数组名=new 数据类型[长度]

        2.数据类型[] 数组名={值,值,值……}

        3.数据类型[] 数组名=new 数据类型[]{值,值,值,……}

      ★遍历的两种方式

        1.for循环

          for(初始量;条件;迭代){

            遍历操作

          }

        2.增强for循环

          for(数据类型 i 变量名:nums数组名){

            System.out.println(i)

          }

        ★,相当于 把数组nums里的元素依次存入变量i 中,再依次遍历打印。

    二,排序

      1.冒泡排序

       从第一依次两两相比,最大的右移

        public static void main(String[] args) {

          //聲明數組

          int[] a={2,5,6,3,8,34,23,15,17};

          //外層第幾輪數

          for(int i=1;i<a.length;i++){

          //內層,這輪比幾次,次數

          for(int j=1;j<a.length-i;j++){

            if(a[j]>a[j+1]){

              int temp=a[j+1];

              a[j+1]=a[j];

              a[j]=temp;

            }

          }

        }

          for (int c : a) {

            System.out.print(c+" ");

          }

        }

      2.选择排序

      从每轮第一依次和后面所有相比,最小的左移

        //聲明數組

        int[] a={2,5,6,3,8,34,23,15,17};

        for(int i=1;i<a.length;i++){

          for(int j=i;j<=a.length-1;j++){

            if(a[i-1]>a[j]){

              int temp=a[i-1];

              a[i-1]=a[j];

              a[j]=temp;

            }

          }

        }

    三,常用Arrays

      Arrays.equals(a1,a2);        比较两个数组是否相等

      Arrays.sort(a1);          对数组a1元素升序排列

      Arrays.toString(a1);         将数组a1转换成一个字符串

      Arrays.fill(a1,13);        对数组a1所有元素都赋值为13

      Arrays.copyOf(a1,6长度);      把数组a1复制成长度为6的新数组

      Arrays.binarySearch(a1,8);      查询8在数组a1中的下标

    四,二维数组

      int[ ][ ] nubs=new int[5][3];

      int[ ][ ]  scores;

      scores=new int [5][3];

      int[ ] [ ] scores=new int [ ] [ ]{{90,87,99,56,74},{57,78,59},{100,93,76}};

        int scores[ ][ ]={{90,87,99,56,74},{57,78,59},{100,93,76}};

  • 相关阅读:
    前端 整理的待学习技术点
    为Xamarin更好的开发而改写的库
    C#函数式编程之可选值
    C#函数式编程之序列
    C#函数式编程之标准高阶函数
    C#函数式编程之递归调用
    C#函数式编程之缓存技术
    C#函数式编程之惰性求值
    C#函数式编程之部分应用
    Xamarin.Android之动画
  • 原文地址:https://www.cnblogs.com/kide1412/p/10882814.html
Copyright © 2011-2022 走看看