java基础之挖坑(1.3)--数组

1.数组概念

数组是存储多个变量(元素)的东西(容器)
这多个变量的数据类型要一致
数组既可以存储基本数据类型,也可以存储引用数据类型。

2.数据的定义

定义格式:
         A:数据类型[] 数组名;
         B:数据类型 数组名[];
举例:
         A:int[] a; 定义一个int类型的数组,数组名是a。
         B:int a[]; 定义一个int类型的变量,变量名是a数组。

3.数组初始化

Java中的数组必须先初始化,然后才能使用。
所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。

a:动态初始化    只指定长度,由系统给出初始化值  int[] arr = new int[3];
b:静态初始化    给出初始化值,由系统决定长度    int[] arr = new int[]{1,2,3}; 简化后:int[] arr = {1,2,3};

4.JVM内存划分

5.数组排序

 1.交换排序方法
for (int i = 0; i < nums.Length - 1; i++){
    //在 i-(nums.Length-1) 范围内,将该范围内最小的数字提到i
    for (int j = i + 1; j < nums.Length; j++)  {
        if (nums[i] > nums[j]) {
            //交换
            int temp = nums[i];
            nums[i] = nums[j];
            nums[j] = temp;
        }
    }
}

 2.冒泡排序
for (int i = nums.Length - 1; i > 0; i--){
    //在 0-i 范围内,将该范围内最大的数字沉到i
    for (int j = 0; j < i; j++)  {
        if (nums[j] > nums[j+1]) {
            //交换
            int temp = nums[j];
            nums[j] = nums[j+1];
            nums[j+1] = temp;
        }
    }
}

6.数组反转

public static void reverse(int[] arr) {
    for(int startIndex=0,endIndex=arr.length-1;startIndex<=endIndex;startIndex++,endIndex--) 
    {
        int temp = arr[startIndex];
        arr[startIndex] = arr[endIndex];
       arr[endIndex] = temp;
    }
}

7.二维数组的遍历

      for(int y=0; y<arr.length; y++) {
                 for (int x = 0; x < arr[y].length; x++) {
                      System.out.print(arr[y][x] + "  ");
                 }
                System.out.println();
        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章