zoukankan      html  css  js  c++  java
  • 数组与内存控制1--数组初始化

    使用Java数组前一定要对数组进行初始化,也就是为数组分配内存空间,并指定初始值(数组变量不需要初始化下图中 books为数组变量,books所指的疯狂java讲义。。那些是数组对象)。

    数组初始化方式:

    • 静态初始化:初始化时由程序员显示的指定每个数组元素的值,由系统决定数组长度。
    • 动态初始化:初始化时程序员只指定数组长度,由系统为数组元素分配初始值。

    注意:不要同时使用静态初始化和动态初始化。即不要既指定数组长度,也为每个数组元素分配初始值。

    public class ArrayTest {
    
        public static void main(String[] args) {
            //采用静态初始化方式初始化第1个数组
            String[] books = new String[]{
                "疯狂java讲义","轻量级Java EE 企业应用实战","疯狂Ajax讲义","疯狂XML讲义"    
            };
            //采用静态初始化的简化形式初始化第2个数组
            String[] names = {"孙悟空","猪八戒","白骨精"};
            //采用动态初始化的方法初始化第3个数组
            String[] strArr = new String[5];
            
            //访问三个数组的长度
            System.out.println(books.length);  //4
            System.out.println(names.length);  //3
            System.out.println(strArr.length); //5
        }
    }
    View Code

      

    //让books数组变量、StrArr数组变量指向names所引用的数组
    books = names;
    strArr = names;
    View Code

    Java数组是静态的,一旦初始化完成,数组元素的内存空间分配即结束,程序只能改变数组元素的值,而无法改变数组的长度。

    注意:数组变量是一种引用类型的变量,并不是数组本身,它只是指向堆内存中的数组对象。

    •  基本类型数组初始化:程序直接先为数组分配内存空间,再将数组元素的值存入对应内存里。

    • 引用类型数组初始化:数组元素里存储的是引用,它指向另一块内存里。

       

    注意:所有局部变量都是放在栈内存里保存的,不管其是基本数据类型的变量还是引用类型的变量,都是存储在各自的方法栈区中;但引用类型变量所引用的对象则总是存储在堆内存中。

    {
        //定义一个int[]类型的数组变量
        int[] iArr = null;
        //只要不访问IArr的属性和方法,程序完全可以使用该数组变量
        System.out.println(iArr);
        //动态初始化数组,数组长度为5
        iArr = new int[5];
        //只有当iArr指向有效的数组对象后,下面才可以访问iArr的属性
        System.out.println(iArr.length); 
    }
    View Code
  • 相关阅读:
    tomcat9部署到nginx,不能通过nginx访问到tomcat
    解决Linux系统部署webapp,JavaMail 发送邮件javax.mail.MessagingException: 501 Syntax: HELO hostname问题
    先本地仓库中国添加jar包
    IDEA修改pom.xml文件不自动下载的问题
    JavaWeb路径的理解【加不加斜杠又何区别】
    IDEA好用的模板设置
    使用maven启动web项目报错
    MAVEN的学习(图片资源来自黑马程序员)
    option标签不支持单击事件
    immutable.js学习笔记(九)----- Range 与 Repeat
  • 原文地址:https://www.cnblogs.com/wangqi327/p/4482352.html
Copyright © 2011-2022 走看看