JAVA 数组

文章介绍了JAVA中一维和多维数组的定义、初始化方法,包括数组长度的设定、元素访问以及数组API如length属性、Arrays.sort()、Arrays.fill()等。同时强调了JAVA数组长度的灵活性和初始化时的默认值情况。
摘要由CSDN通过智能技术生成

JAVA 数组

Acwing Java语法基础笔记

一维数组

### 数组定义方式同变量定义方式:
int a=1; //定义整数变量值为1

int[] a; //定义整数数组a,此时a为空数组,未初始化(数组长度就是0) ##java没有指针概念
a = new int[10];   //将a初始化为长度为10的数组
// 上述两句数组定义也可合成一句话:
int[] a = new int[10]; //长度为10的数组,且初始值内容都为0(此处和C++不同,C++数组初始值默认为随机值)

//常见定义方式:
int[] a = new int[10], b;  //定义长度为10的整数数组a和未初始化长度的整数数组b
float[] f = new float[33];
double[] d = new double[123];
char[] c = new char[21];
String[] str = new String[10]  //初始值都是null

数组初始化的方法

int[] a = {0, 1, 2};        // 含有3个元素的数组,元素分别是0, 1, 2
int[] b = new int[3];       // 含有3个元素的数组,元素的值均为0
char[] d = {'a', 'b', 'c'}; // 字符数组的初始化

b = new int[10]    //java数组长度是灵活的,可以修改的

数组访问

同C++

多维数组

int[][] a = new int[3][4]; // 大小为3的数组,每个元素是含有4个整数的数组。
int[][][] b = new int[10][20][30]; // 将所有元素的初值为0
// 大小为10的数组,它的每个元素是含有20个数组的数组
// 这些数组的元素是含有30个整数的数组

多维数组初始化

int[][] a = {           // 三个元素,每个元素都是大小为4的数组
    {0, 1, 2, 3},       // 第1行的初始值
    {4, 5, 6, 7},       // 第2行的初始值
    {8, 9, 10, 11}      // 第3行的初始值
    
// java多维数组每一维的长度是可以不同
int[][] a = {
    {0,1,2,3},
    {4,5,6},     //长度为3
    {7,8,9,10}
}

数组常用API

  • 属性length:返回数组长度,注意不加小括号

  • 使用Arrays需要import java.util.Arrays

  • Arrays.sort():数组排序

  • Arrays.fill(int[] a, int val):填充数组

  • Arrays.toString():将数组转化为字符串

  • Arrays.deepToString():将多维数组转化为字符串

  • 数组不可变长

    import java.util.Arrays;
    public class Main {
        public static void main(String[] args)
        {
            int[] a = {5,1,2,4,3};
            System.out.println(a.length); // 5
    
            int[][] b = {
                    {1,2,3},
                    {4,5,6,7},
                    {7,8,9}
            };
            System.out.println(b.length); //3
            for(int i=0;i<b.length;i++)
                System.out.println(b[i].length);
            // 输出:
            //3
            //4
            //3
            System.out.println(Arrays.toString(a)); // [5, 1, 2, 4, 3]
            System.out.println(Arrays.deepToString(b));  // [[1, 2, 3], [4, 5, 6, 7], [7, 8, 9]]
    
            Arrays.fill(a,1);
            System.out.println(Arrays.toString(a)); // [1, 1, 1, 1, 1]
    
            Arrays.sort(a);
            System.out.println(Arrays.toString(a)); // [1, 2, 3, 4, 5]
        }
    }
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值