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

    1、数组和集合的区别
    数组是定长的,只能存入相同类型元素的一种容器,它既可以存入引用数据类型元素,也可以存入基本数据类型元素。
    而集合是可以自动增长容量的,可以存入不同类型元素的另外一种容器,集合中只能存入引用数据类型的元素,不能存入基本数据类型的元素。
    正因为如此,在JDK1.5的时候,加入了泛型机制和自动装箱/拆箱机制;之前需要人工手动装箱/拆箱。
     
    2、数组本身是一种引用数据类型
    2.1但我们发现在Eclipse里无法通过“Ctrl+鼠标左键”的方式打开一个数组的源码。
    2.2不过,我们却又发现可以通过反射机制得到一个数组的Class对象,并进一步获取这个Class对象的name属性的值,示例代码如下:
     1 package test;
     2 
     3 public class Test {
     4     public static void main(String[] args) {
     5         int[] array = new int[10];
     6         System.out.println(array.getClass());
     7         System.out.println(array.getClass().getName());
     8         System.out.println();
     9         System.out.println("1".getClass());
    10         System.out.println("1".getClass().getName());
    11     }
    12 }
    View Code
    1 class [I
    2 [I
    3 
    4 class java.lang.String
    5 java.lang.String
    运行结果 

    由此,我们知道,在本质上数组和其它的引用数据类型并没有区别,只不过是在具体的实现方式上有所不同而已。留待以后扩展......

    2.3所以,数组中的每个元素相当于数组对象的成员变量。我们知道,数组元素的默认值为0、0L、0.0、0.0F、null等,而这和成员变量的默认值完全相同。
     
    3、数组元素如果是引用类型,那么在数组中保存的就是一个一个的引用变量,而不是对象本身;也只能保存引用变量,否则数组元素的引用变量就没有存在的意义了。
     
    4、数组的声明
    int[] array = new int[10];
    int[] array = new int[]{10};
    int[10] array;
    第三种写法在java中是错误的;而在C++中可以的,表示在Stack内存块中创建一个容量为10的数组。
     
    5、数组有一个 length 属性,它保存着数组的长度。
  • 相关阅读:
    我这里面所用的DBHelper
    同时向主表和从表里面导入execl数据 (asp.net webform)
    在asp.net webform中的 gridview 里面的一些基本操作
    在ASP.NET WEBFORM 中后台实现gridview全选功能
    asp.net webform 发送电子邮件
    Asp.Net中的三种分页方式
    asp.net获取客户端浏览器及主机信息
    在asp.net webfrom 中上传execl (读取单个sheet的数据)
    Linux五种IO模型性能分析
    epoll/poll/select的原理
  • 原文地址:https://www.cnblogs.com/Mike_Chang/p/6619233.html
Copyright © 2011-2022 走看看