第四节 数组

一、数组的定义

1.数组的概念

数组:内存空间连续的一块区域,用来存储同一种数据类型的多个元素
1.连续:同一种数据类型
2.索引:从0开始
索引:从0开始,到数组的长度-1结束
数据的长度: 数组名.length
数组名[索引] 定位数组中的元素

  • 数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器
  • 数组既可以存储基本数据类型,也可以存储引用数据类型
  • 数组是一组相关数据的集合,一个数组实际上就是一连串的变量.
  • 数组的遍历:

2.数组的声明规则

数据类型[] 数组名 = 初值

int[] array = new int[5]

注意:[ ]中5就是数组array的长度
数组的长度一旦给定 就不能修改

  • 其中数据类型代表: 数组中盛放数据的 数据类型
  • 数组使用下标(角标)来访问元素(保存元素) 下标从0开始
intl] array = (1,2,3,4);
34431838
intl] array = new int[5]:
赋值

3.数组在内存中如何存储

在这里插入图片描述

二、数组的常规状态

1.声明数组的两种方式

第一种: 一般情况下,当我们不知道数据里面有什么内容的时候,我们会先声明一个数组,然后再去赋值

int[] array = new int[5];
 array[0] = 1;
        array[1] = 3;
        array[2] = 5;
        array[3] = 6;
        array[4] = 7;
        

第二种

  int[] array2 = new int[]{1,3,5,7,9};

第三种, 虽然我们没有明确的指定数组的长度,但是一旦声明了以后,长度就固定了

int[] array3 = {1,3,5,7,9};
//        array3[5] = 10;


        String[] names = {"王工", "冀工", "金工", "吴工" };
        int[] chars = {120,'a','韩'};

2.数组的常用方式

  • Arrays.toString(array) 数组的打印
    System.out.println(Arrays.toString(array));

  • Arrays.sort(array); 数组的排序
    会在原来的数组上修改

  • Arrays.copyOf(要复制的数组,指定新数组的长度)
    会得到一个新的数组

  • 数组的长度数组名.length

  • 数组的索引 从0开始,最大的索引: 数组名.length-1
    指定索引位置数组的元素
    查询: 数组名[索引
    修改: 数组名[索引] = 数值
    在这里插入图片描述
    冒泡排序法

//冒泡排序
   int num = 0;
   for (int i = 0; i < age.length - 1; i++) {
       for (int j = 0; j <age.length - 1 - i ; j++) {
            if (age[j] > age[j+1]){
               num = age[j+1];
               age[j+1] = age[j];
               age[j] = num;
           }
       }
   }

最大值最小值

int[] array = {77, 80, 5, 100, 20, 15};
//        int max = array[0]; // 存放最大值
//        for (int i = 0; i < array.length; i++) {
//            if(max<array[i]){
//                max = array[i];
//            }
//        }
//
//        System.out.println(max);
//        Arrays.sort(array);
//        System.out.println(array[array.length-1]);

        int min = array[0]; // 存放最小值
        for (int i = 0; i < array.length ; i++) {
            if(min>array[i]){
                min = array[i];
            }
        }
        System.out.println(min);
        Arrays.sort(array);
        System.out.println(array[0]);
    }

3.二维数组

<数据类型> [ ][ ] 数组名; 或者 <数据类型> 数组名 [ ][ ];
方法一、

int [ ][ ] scores;   		 //定义二维数组
  	        scores=new int[5][50]; 		 //分配内存空间

方法二、

int [ ][ ] scores = new int[5][50]; 

三、常见错误

在这里插入图片描述````````````````````````````

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值