【学习笔记】数组

数组是一段可以存放多个数据的结构;

1、特点:在内存开辟一段连续的内存空间;

2、语法:

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

如 int[] scores=new int[5];
(2)数据类型[] 数组名={值,值,值}

如 int[] ages={27,32,40,36};
(3)数据类型[] 数组名=new 数据类型[]{值,值,值}

如:String[] names=new String[]{"tom","jack"};
3、获得数组中的数据:数组名[下标]  下标从0开始

如 int[] ages={27,32,40,36};

System.out.println(ages[2]); //输出:40

4、循环得到数组中的值

如 int[] ages={27,32,40,36};

//顺序输出

for(int i=0;i<ages.length;i++){

System.out.println(ages[i]); //27,32,40,36

}

//逆序输出

for(i=ages.length-1;i>=0;i--){

System.out.println(ages[i]); //36,40,32,27

}

5、注意事项:

(1)数组的长度是固定的,不能数组越界;
(2)在定义数组时没有赋值时,整型数组每个元素的默认值是0,浮点型默认值是0.0,boolean类型默认值是false,char类型默认是空格,引用类型默认值是null;

6、数组的算法
(1)得到数组中的最大值和最小值;
(2)方式:定义变量存储数组中的第一个元素,循环数组中的每个元素,通过判断比较,条件成立,重新为变量赋值;

如:

int[] nums= {6,5,2,3,7,1};
        int max=nums[0];
        for(int i=1;i<nums.length;i++) {
            if(nums[i]>max) {
                max=nums[i];
            }
        }
        System.out.println("最大值是:"+max);    

7、二维数组
(1)定义:在一个数组中,又嵌套另一个数组
(2)语法:

数据类型[][] 数组名=new 数据类型[][]{} ;   //[][]可在数组名前后,如int[] nums[]、int nums[][]

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

int[][] nums=new int[][] {{1,9,4},{3,4,5,6,7}};

int[][] ages=new int[2][];

(3)得到二维数组中的值

        int[][] nums= {{2,3},{5,4,2}};
        for(int i=0;i<nums.length;i++) {
            for(int j=0;j<nums[i].length;j++) {
                System.out.print(nums[i][j]+"\t");
            }
            System.out.println();
        }

8、数组工具 Arrays:

Arrays是对数组进行排序、填充、复制、比较的工具类;Arrays是一个静态类,里面的所有方法都可以直接通过类名.方法()得到;

(1)排序:Arrays.sort(数组名)  将数组中的元素按照从小到大的顺序排序

       如:

int[] ages= {36,25,24,32,50};
        Arrays.sort(ages);
        System.out.println("从小到大排序:");
        for(int i=0;i<ages.length;i++) {
            System.out.print(ages[i]+"\t");
        }

(2)输出字符串:Arrays.toString(数组名)  将数组中元素以字符串输出

如:System.out.println(Arrays.toString(ages));

(3)批量填充:Arrays.fill(数组名,开始下标,结束下标,填充值)  将指定元素填充到数组中的指定位置(下标位置的值不含在内)

    如:

//指定位置填充,其它位置的值默认为0

    int[] nums=new int[5];
        Arrays.fill(nums, 1,3,7);
        System.out.println(Arrays.toString(nums));        //  [0, 7, 7, 0, 0]

//不指定位置,全填充

        int[] nums=new int[5];
        Arrays.fill(nums, 7);
        System.out.println(Arrays.toString(nums));        //  [7, 7, 7, 7, 7]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值