• Java数组定义、遍历及JVM内存划分


    数组:存储数据长度固定的容器,保证每个数据的数据类型要一致。

    容器:将多个数据存储到一起,每个数据称为该容器的元素。

    数组有三种创建方式:

      数组存储的数据类型[] 数组名称 = new 数组存储的数据类型[长度(正整数)];(动态初始化)

      数组的数据类型[]  数组名称  = new 数组的数据类型[]{元素1,元素2,元素3,...};(静态初始化)

      数组的数据类型[] 数组名称 = {元素1,元素2,元素3,.....};(静态初始化)

    如果不确定数组当中存储的内容时,用动态初始化,反之内容已经确定了,使用静态初始化。大多数情况下,建议使用动态初始化。

    创建空数组的默认值:   

        对于int整数类型来说,默认值是0

        对于浮点数类型来说,默认值是0.0

        对于字符类型来说, 默认值是'u0000' 显示是一个空格

        对于布尔类型来说, 默认值是false

        对于引用类型来说, 默认值是null

    数组特点:

      1.长度不可变

      2.数组本身是引用类型

      3.数组存的元素数据和数组类型保持一致(数组可以当做一个杯子,当杯子里装牛奶的时候就不要再装茶叶了)

    数组访问:

        每一个存储到数组当中的元素,都会自动的分配一个编号

        从【0】开始,这个系统自动分配的编号称为数组的索引(index),可以通过索引访问数组当中的元素。

    数组长度可以用:数组名.length      得到值为int类型

    修改索引对应的值:数组名[索引]=(直接替换)元素值

    JVM内存划分:

      内存空间进行不同区域的划分,每一片区域都有特定的处理数据方式和内存管理方式。这样是为了提高运算效率

    区域名称 作用
    寄存器 给CPU使用,和开发没有关系
    本地方法栈 JVM在使用操作系统功能时使用,和开发没有关系
    方法区 存储可以运行的class文件(常量池、静态域)
    方法栈(stack) (main)方法运行时使用的内存
    堆内存(heap) 存储对象或者数组,new出来的对象,都存储在堆内存中(可以当做是在内存中的容器)

    如果输出数组的名字,会在控制台显示数组所在内存地址哈希值

    如果两个变量同时指向同一个数组,因为在内存中地址哈希值不变,所以修改任意一个变量的索引元素值,另一个变量所在的索引元素值也会变

    数组遍历:

        将数组中的每一个元素分别获取出来就是遍历。

    数组的索引从0开始,依次递增,递增到arr.length-1为止,引入循环结构

    public static void main(String[] args) {
        // 静态初始化一个int数组
        int[] arr = {1,2,3,4};
        // 数组遍历 for或者while
        for (int i = 0; i <= arr.length-1; i++) {//遍历容器时,初始化语句当中的循环变量一般都是索引值
          System.out.println(arr[i]);
        }
    }

     

     

  • 相关阅读:
    vue+element ui 实现菜单无限极菜单
    DOM事件绑定原理和传播机制
    数组和对象的深浅克隆
    new源码分析和Object.create的重写
    原型和原型链的学习
    4.3 模型参数的延后初始化
    4.2 模型参数的访问、初始化和共享
    CSAPP Float Point
    4.1 模型构造
    3.16 实战Kaggle比赛:房价预测
  • 原文地址:https://www.cnblogs.com/9080dlb/p/13966563.html
Copyright © 2020-2023  润新知