zoukankan      html  css  js  c++  java
  • Java 数组

    Java数组

    • 静态初始化
      • //只是指定初始值,并没有指定数组的长度,但是系统为自动决定该数组的长度为4


        String[] computers = {"Dell", "Lenovo", "Apple", "Acer"};
      • //只是指定初始值,并没有指定数组的长度,但是系统为自动决定

        String[] names = new String[]{"多啦A梦", "大雄", "静香"};
    • 动态初始化
      • //只是指定了数组的长度,并没有显示的为数组指定初始值,但是系统会默认给数组数组元素分配初始值为null

        String[] cars = new String[4];
    • 数组的存储
      • 无论使用的数组属于什么类型,数组标识符实际都是指向真实对象的一个句柄
      • 堆中的数组对象唯一能访问的数组成员是只读的length,方法是[]
    • 二维数组
      • int[][] nums = new int[2][2];
        nums[0][1] = 2;
    • Object 类的toString()方法默认为类名+对象地址
    • 编译期检查
      • 是否为数组变量创建对象
      • 是否插入错误类型
    • Arrays 方法
      • asList():将数组转变为List,但是,这个生成的List,它是固定长度的,如果对其进行add或者remove的操作,会抛出UnsupportedOperationException

        源码中:

        public static <T> List<T> asList(T... a) { return new ArrayList<T>(a); }
        方法asList返回的是new ArrayList(a)。但是,这个ArrayList并不是java.util.ArrayList,它是一个Arrays类中的重新定义的内部类。从这个内部类ArrayList的实现可以看出,它继承了类AbstractList,但是没有重写add和remove方法,没有给出具体的实现。查看一下AbstractList类中对add和remove方法的定义,如果一个list不支持add和remove就会抛出UnsupportedOperationException。
  • 相关阅读:
    (转) dedecms中自定义数据模型
    (转)dedecms网页模板编写
    (转)dedecms入门
    (转)浅谈dedecms模板引擎工作原理及自定义标签
    (转)PHP数组的总结(很全面啊)
    (转)echo和print的区别
    (转)dedecms代码详解 很全面
    (转)php 函数名称前的@有什么作用
    (转)PHP正则表达式的快速学习方法
    GIS中mybatis_CMEU的配置方法
  • 原文地址:https://www.cnblogs.com/NewDolphin/p/5371554.html
Copyright © 2011-2022 走看看