Java基础知识3——数组

数组(Array):
    特点:
        ·引用数据类型
        ·有多个数据,类型必须统一
        ·数组长度在程序运行中不可改变

    初始化:
        动态初始化(指定长度): 数据类型[] 数组名称 = new 数据类型[数组长度]
        静态初始化(指定内容):数据类型[] 数组名称 = {元素1,元素2,...}

    注:
        ·静态初始化没有直接指定长度,但仍会自动推算得到长度
        ·不确定具体内容用动态,确定具体内容用静态
        ·直接打印数组名称,得到的数组对应的内存地址值

    访问数组元素的格式:
        数组名称[索引值]
            索引值从0开始,一直到数组的长度-1为止

    Java的内存划分为5个部分:
        1.栈(stack):存放方法的局部变量,方法的运行在栈当中
                局部变量:方法的参数,or方法{}内的变量
                作用域:一旦超出作用域,立即从栈中消失
        2.堆(Heap):凡是new出来的东西都放在堆当中
                堆内存里面的东西有一个地址值:16进制
                堆内存放的数据都有默认值,规则:
                    整数      0
                    浮点数     0.0
                    字符     \ u000
                    布尔      false
                    引用类型   null
        3.方法区(Method Area):存储.class的相关信息,包含方法的信息
        4.本地方法栈(Native Method Stack):与操作系统有关
        5.寄存器(pc Register):与cpu相关

    数组使用常见错误:
        ·索引越界
        ·空指针异常:忘记了new初始化

    获取数组的长度:
        数组名称.length

 

//  创建数组
//        动态初始化
//        int[] arrayA = new int[10];
//        静态初始化
//        int arrayB = new int[]{2,3,4}

//        获取数组长度
        int[] arrayA = {2,8,5,6,9};
        int len = arrayA.length;
        System.out.println(len);
//        获取数组的每个元素
        for (int i = 0; i < arrayA.length; i++) {
            System.out.println(arrayA[i]);
        }

//        获取数组中最大值
        int max = arrayA[0];
        for (int i = 1; i <arrayA.length ; i++) {
            if (arrayA[i]>max){
                max = arrayA[i];
            }
        }
        System.out.println(max);

//        数组元素反转
        for (int Min = 0,Max = arrayA.length-1; Min <Max ; Min++,Max--) {
            int temp = arrayA[Min];
            arrayA[Min] = arrayA[Max];
            arrayA[Max] = temp;
        }

        for (int i = 0; i < arrayA.length; i++) {
            System.out.println(arrayA[i]);
        }

       

 

        遍历数组每个元素的便捷代码:  数组名称.fori
//当产生多个返回值时,可用数组来接收
    public static int[] calculate(int a, int b ,int c){
        int sum = a+b+c;//求和
        int avg = sum/3;//平均数
        int[] arrayB = {sum , avg};
        return arrayB;
    }


        int[] resault = calculate(10,20,30);
        System.out.println(resault[0]);
        System.out.println(resault[1]);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值