Java数组的一些知识

复习一下Java数组的知识

  • Java的数组是静态的,即当数组被初始化之后,该数组的长度是不可变的,只能改变数组元素的值。

  • Java中的数组必须初始化后才可以使用 ,更准确的说应该是数组对象必须初始化,而数组变量不需要初始化,数组变量只需要指向一个有效的数组对象即可正常使用。

  • 数组的初始化方式分为:

    • 静态初始化:初始化时由开发人员显示的指定每个数组元素的初始值,由系统决定数组长度;
    • 动态初始化:初始化时开发人员只指定数组长度,由系统为数组元素分配初始值。
  • 基本类型数组的初始化如下:

public static void main(String args[]){
    //静态初始化
    String[] names = {"孙悟空","猪八戒","鲁智深"};
    //动态初始化
    String[] values = new String[5];
    values[0] = "孙悟空"
    values[1] = "猪八戒"
    values[2] = "鲁智深";
    //数组变量
    String[] arr;
    arr = names;
    System.out.println(arr.length);
}
  • 引用类型数组的元素依然是引用类型,因此数组里面存储的还是引用,它指向另外一块内存,这块内存里存储了该引用变量所引用的对象。对象引用如下:
public class Person{
  public int age;
  public String name;
  public void info(){
    System.out.println("age"+ age + "name" + name);
  }
}
public static void main(String args[]){
     //数组变量
     Person[] p;
     //动态初始化
     p = new Person[2];
     System.out.println(p.length);

     Person zhang = new Person();
     zhang.age = 18;
     zhang.name = "zhangsan";
     Person li = new Person();
     li.age = 20;
     li.name = "lisi";  

     p[0] = zhang;
     p[1] = li;
    
     li.info();
     p[1].info();
}
  • 多维数组
    没有多维数组,所谓多维数组其实只是数组元素依然是数组的1维数组。
    多维数组代码如下:
public static void main(String args[]){
    int[][] a;
    a = new int[4][];
    for(int i = 0; i< a.length;i++){
        System.out.println(a[i]);
    }
    a[0] = new int[2];
    a[0][1] = 6;
    for(int i = 0; i< a[0].length;i++){
        System.out.println(a[0][i]);
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,786评论 18 399
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,386评论 11 349
  • 前言 不知道大家有没有这样一种感觉,程序员的数量井喷了。可能是因为互联网火了,也可能是各家培训机构为我们拉来了大量...
    活这么大就没饱过阅读 2,756评论 6 25
  • 21天感恩存款------第六天 平平安安的一天 感谢晓云昨天晚上一起看了 变形金刚 21天感恩存款...
    斌斌酱阅读 166评论 0 0
  • 这几天天气热的反常,我倚在教室窗前,听着呼呼的风扇响,看着操场出了神。 话说他可真黑啊,黑到在人群中那么显眼...
    吝酸阅读 129评论 0 0