数组(包含二维数组)

    科技2025-05-24  39

    目录

    一维数组

    定义格式:

    数组的初始化

    动态初始化:

    静态初始化

    数组元素的访问方式

    数组遍历

    数组的应用

    冒泡排序

    二维数组

    定义格式:

    二维数组的初始化

    动态初始化

    静态初始化

    二维数组的遍历

    基本数据类型作为形式参数进行传递的特点

    二维数组的应用


    一维数组

    概念:存储一组数据的集合

    定义格式:

    数据类型[] 数组名称;

    数据类型 数组名称[];

    数组的初始化

    1)动态初始化:指定了数组的长度,系统默认给定数组的元素值

    2)静态初始化:指定了具体的元素的内容,系统默认指定数组的长度

    动态初始化:

           数据类型[]  数组名称 = new 数据类型[数组长度];

    数据类型  数组名称[] = new 数据类型[数组长度];

    静态初始化

    指定数组的元素内容,系统给它默认长度

    格式:

    数据类型 [] 数组名称 = {元素1,元素2,....};

    数据类型 数组名称[] = {元素1,元素2,.....};

    数组元素的访问方式

    数组名称[角标] 来访问

    角标(索引):都是从0开始记录元素的.

    数组遍历

    将数组元素一一输出

    使用增强型for循环遍历数组

    /* 数组的遍历 */ int arr[] = {1,2,3,4,5,6,7,8,9};//创建数组 for(int x =0;x<arr.length;x++){//遍历数组 System.out.println(arr[x]); }

    用方法遍历数组

    //用方法遍历数组 public static void main(String[] args){ int arr[] = {1,2,3,4,5,6,7,8,9};//创建数组 printarr(arr); //直接调用 } //方法的声明 public static void printarr(int arr[]){ for(int x = 0;x<arr.length;x++){ System.out.println(arr[x]); } }

    数组的应用

    1)最值问题

    2)数组元素的逆序

    3)数组元素查表法

    4)数组元素基本查找

    5)数组高级_冒泡排序(重点)

    冒泡排序

    思想:

    相邻元素两两比较,将大的往后放

    第一次比较完,最大值出现在最大索引处

    依次比较

    规律

    第一次:0个不比

    第二次:1个不比

             ......

    比较大次数:数组长度-1次

    /* 冒泡排序 */ public static void bubble(int arr[]){ for(int x = 0;x < arr.length-1;x++){//比较的次数, for(int y = 0;y < arr.length-1-x;y++){//元素的索引值 if(arr[y] > arr[y+1]){//判断相邻元素的大小关系,用中间变量交换位置 int temp = arr[y]; arr[y] = arr[y+1]; arr[y+1] = temp; } } } }

    二维数组

    概念:一个包含了多个一维数组的数组

    定义格式:

    数据类型[]  数组名称[];

    数据类型[][] 数组名称;

    二维数组的初始化

    动态初始化

    数据类型[][] 数组名称 = new 数据类型 [m][n];

    m表示当前二维数组中的一维数组的个数

    n表示每个一维数组的长度

    静态初始化

    数据类型[][] 数组名称 = {{},{},{},....};

    二维数组的遍历

    二维数组由多个一维数组组成,需要将每一个一维数组的元素一一输出

    /* 二维数组的遍历 */ int [][]arr = {{1,2,3},{4,5,6},{7,8,9}};//创建二维数组 for(int x=0;x<arr.length;x++){//先遍历二维数组中的一维数组 for(int y =0;y<arr[x].length;y++){//再将一维数组中的元素遍历出来 System.out.println(arr[x][y]); } }

    基本数据类型作为形式参数进行传递的特点

    形式参数的改变对实际参数没有影响

    String类型作为形式参数,形参的改变对实际参数没有影响与基本数据类型作为形参相同

    字符串是一个常量,一旦被赋值,其值不能被改变.

    二维数组的应用

    /* 杨辉三角 通过键盘录入输出n行n列的数据 */ import java.util.Scanner;//导包 class Demo{ public static void main(String[] args){ Scanner sc = new Scanner(System.in);//创建键盘录入对象 System.out.print("请输入数据:");//提示并接收数据 int n = sc.nextInt(); //创建二维数组 int[][]arr = new int[n][n]; //给每一行的第一列和最后一列赋值为1 for(int x = 0;x < arr.length;x++){ arr[x][0] = 1; arr[x][x] = 1; } //从第三行开始遍历数组 for(int x = 2;x <arr.length;x++){ for(int y = 1;y <= x-1;y++){ //当前数值等于上一行的前一列+本列之和 arr[x][y] = arr[x-1][y-1] + arr[x-1][y]; } } //遍历数组 for(int x = 0 ; x < arr.length ; x ++){ for(int y = 0 ; y <=x ; y ++){ //x = 0 (第一行), y=0(第一列) ,y<=1(0,1) System.out.print(arr[x][y] +"\t") ; //arr[0][0] arr[1][1] } System.out.println() ; } } }

     

    Processed: 0.013, SQL: 8