• No.1 数组与内存控制


    1.动、静态初始化(数组);初始化包括:①分配内存②赋初始值

    • 何为动、何为静,站在程序(系统)的角度来看,“动”指的是系统动态的赋初始值(先赋默认初始值,后面程序若有显示赋值是在默认值上面进行再赋值)(程序员指定数组长度);“静”指的是不由系统来赋初始值(系统指定长度),也就是由程序员显示赋初始值
    • 程序员角度上:动——程序员只指定长度,不指定初始值;静——程序员不指定长度,指定初始值
    • eg:
       1 // 动态初始化
       2 int score[] = new int[3];  // 此处有默认初始值
       4 //通过循环为数组 动态 赋值,且赋奇数值  
       5 for(int i=0;i<score.length;i++){  
       6    score[i]=i*2+1;  // 将默认初始值改掉
       7 } 
       8 
       9 // 静态初始化
      10 int score[]={94,86,25,78,19};  

    2.局部变量存放在 各自的方法栈区中(main方法:main栈区),引用类型变量所引用的对象放在堆内存中

    3.区分引用类型变量何时指变量何时指的是引用的对象,规则

    • 引用变量本质上只是一个指针,只要程序通过它来访问属性或者调用方法,那么引用变量就会由他所引用的对象来代替。

    4.数组元素指的是:数组对象所存储的值

    • 数组元素就是变量,可以当成普通变量来进行使用
    • 区别:main方法声明的变量属于局部变量保存在main方法栈中,但是数组元素作为数组对象的一部分是保存在堆内存中的,不论他们是基本类型还是引用类型的数组元素

    5.没有多维数组,多维数组的本质仍然是一维数组

    • 所谓多维,其实是指数组元素仍然是数组(此处的数组可以是N维的)的1维数组
    • 初始化时,可先初始化最左边的维数  
    • int[5][][]:表示长度为5的一维数组,它的数组元素是二维的数组,即它的数组元素是指向二维数组对象的引用变量

    6.Java中数组是静态的,即它一旦初始化完成,长度是不可改变的

    PS:不足之处,欢迎指正、交流
  • 相关阅读:
    第5章选择结构程序设计
    悲剧:第一次使用Mysql
    Windows Server 2003 IIS 配置网站出现问题及解决
    关于Matlab的Web开发以及Matlab webservice服务的实现经验
    大连市地方税务局关于取消委托代征技术合同酬金个人所得税问题的通知
    使用 WScript.exe 运行脚本
    JavaScript数组
    总结一些js自定义的函数
    JavaScript中parseInt()函数问题
    [荐]日本官方公布听力网址大全
  • 原文地址:https://www.cnblogs.com/fang--/p/6180887.html
Copyright © 2020-2023  润新知