【java 数组】

本文详细介绍了Java中的数组,包括声明、创建、赋值、遍历以及数组的特性。示例展示了如何静态和动态初始化数组,以及如何将数组作为方法参数和返回值。还探讨了二维数组的创建和遍历,并提到了Java工具类Arrays的使用,如数组排序。此外,文章还提及了数组长度固定、元素类型一致等关键点。
摘要由CSDN通过智能技术生成

数组

数组是一堆相同类型数据的有序集合,可以用相应的下标提取对应的值。

数组的声明创建

数组是通过下标访问的;

//声明
dataType[] a;  //数据类型[]  数组命 
//创建 (分配空间)
 a = new dataType[10]; //创建了可以存放10个dataType类型的数字集合a
 //当然声明和创建可以合起来
 //dataType[]  数组命 = new dataType[数组大小];
 
//给数组赋值 (数组下标从0开始)
a[0] = 0;
a[1] = 1;
a[2] = 2;
a[3] = 4;
a[5] = 5;
a[6] = 6;
a[7] = 7;
a[8] = 8;
a[9] = 9;
//遍历数组
for(int i=0;i<a.length;i++System.out.println(a[i]);
//遍历数组
for(int i : a)
	System.out.println(i);

注意点:

  • 数组一旦创建长度就是固定的;
    超出长度会报错:(类似下面这样)
    ArrayIndexOutOfBoundsExcertion:数组下标越界
  • 数组中的元素类型都是相同的
  • 数组中元素可以是任何类型,包括基本类型和引用类型
  • 数组本身就是对象,而在Java中对象保存在堆中,所以数组对象本身在堆中
//静态初始化:创建 + 赋值
int[] a = {1,2,3,4,5,6,7};//长度就是打括号内的数字个数
System.out.println(a[0]);

//动态初始化:包含默认初始化
int[] b = new int[10];
b[0] = 1;
b[1] = 2;
b[2] = 3;
System.out.println(b[0]);//1
System.out.println(b[1]);//2
System.out.println(b[2]);//3
System.out.println(b[3]);//0

数组作为方法参数

package Dome00;

public class Dome05 {
    public static void main(String[] args) {
        int[] array = new int[2];
        array[0] = 1;

        printArray(array);
    }
	//打印数组元素
    public static void printArray(int[] arrys){
        for(int array :arrys)
            System.out.println(array);
    }
}

数组作为返回值

package Dome00;

public class Dome05 {
    public static void main(String[] args) {
        int[] array = {1,2,3,4,5};
        printArray(array);
		
		System.out.println();
        array = reverse(array);
        printArray(array);
    }

    //返回一个数组
    public static int[] reverse(int[] arrays){
        int[] result = new int[arrays.length];
        for(int i=0,j=result.length-1;i<arrays.length;i++,j--){
            result[j] = arrays[i];
        }
        return result;
    }

    public static void printArray(int[] arrays){
        for(int array :arrays)
            System.out.println(array);
    }

}

输出结果:
1
2
3
4
5

5
4
3
2
1

二维数组

//二维数组的创建
int[][] array = {{1,2},{2,3},{3,4},{4,5}};
//array[0] = {1,2}的地址;
//array[0][0] = 1;
//array[0][1] = 2;
//简单来说二维数组就是一维数组中的每一个元素都是一个数组;

//数组遍历
for(int i=0;i<array.length-1;i++){
	for(int j=0;j<array[i].length-1;j++){
		System,out.println(array[i][j]);
	}
}

数组的工具类Arrays

使用Arrays 需要先导入java.util.Arrays 包

按住Ctrl 点击想要查看的类,就可以查看源码;然后再点击IDEA左下角的structure可以观察到类下的方法。

package Dome00;

import java.util.Arrays;

public class Dome06 {
    public static void main(String[] args) {
        int[] a = {1,2,4,5,34,356,325};

        System.out.println(a);
        //打印数组元素
        System.out.println(Arrays.toString(a));

        //数组排序
        Arrays.sort(a);
        System.out.println(Arrays.toString(a));
    }
}

输出结果:
[I@1d251891
[1, 2, 4, 5, 34, 356, 325]
[1, 2, 4, 5, 34, 325, 356]
还有其他很多方法,详细可以查看JDK帮助文档

今日总结就是这些啦!!!
每天都要开心,没准下一秒有伤心事,趁现在没有自然要开心点!(๑>؂<๑)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陌桔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值