A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xiangzi2008006 中级黑马   /  2013-8-31 08:51  /  1075 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 xiangzi2008006 于 2013-8-31 14:25 编辑

张老师说过,基础数据类型1维数组是个Object对象,String类型1维数组可以看出Object也可以看成Object[]数组,那基础数据类型的二维数组呢?

评分

参与人数 1技术分 +1 收起 理由
薛鹏鹏 + 1

查看全部评分

5 个回复

倒序浏览
对象数组呗,只不过数组中存储的全是对象(数组也是对象,String类型也是)
回复 使用道具 举报
万物皆对象啊,数组可以看成一个对象,每一个数组成员也可以是一个对象。基础数据类型的二维数组可以看成一个对象,数组成员也可以是对象啊。

评分

参与人数 1技术分 +1 收起 理由
薛鹏鹏 + 1

查看全部评分

回复 使用道具 举报
二维数组实质上还是一维数组,只不过其数组元素作为引用,指向一维数组
  1. int[][] a = new int[6][];  // 长度为6的数组
  2. /*
  3. 可以像一维数组一样遍历其中每个数组元素
  4. */
  5. for (int i = 0; i < a.length; i++)
  6. {
  7.     System.out.println(a[i]);
  8. }
复制代码
另:Java语言是强类型语言

评分

参与人数 1技术分 +1 收起 理由
薛鹏鹏 + 1

查看全部评分

回复 使用道具 举报
对于二维数组,你可以把它看成一个对象,也可以看成一个对象数组,具体视情况而定;
比如说在序列化中,一般都是将数组看成是一个对象,观察如下代码:
  1. import java.io.File;
  2. import java.io.FileInputStream;
  3. import java.io.FileOutputStream;
  4. import java.io.ObjectInputStream;
  5. import java.io.ObjectOutputStream;

  6. public class ArraySerDemo {

  7.         public static void main(String[] args) throws Exception{
  8.                 Person per[] = {new Person("张三",30),new Person("李四",31),new Person("王五",32)};
  9.                 ser(per);
  10.                 Person p[] = (Person[]) dser();
  11.                 print(p);
  12.         }
  13.         public static void ser(Object obj) throws Exception{
  14.                 File file = new File("d:"+File.separator+"person.txt");
  15.                 ObjectOutputStream oos = null;
  16.                 oos = new ObjectOutputStream(new FileOutputStream(file));
  17.                 oos.writeObject(obj);
  18.                 oos.close();
  19.         }
  20.         @SuppressWarnings("resource")
  21.         public static Object dser() throws Exception{
  22.                 File file = new File("d:"+File.separator+"person.txt");
  23.                 ObjectInputStream ois = null;
  24.                 ois = new ObjectInputStream(new FileInputStream(file));
  25.                 Object temp = null;
  26.                 temp = ois.readObject();
  27.                 return temp;
  28.         }
  29.         public static void print(Person per[]){
  30.                 for(Person p : per){
  31.                         System.out.println(p);
  32.                 }
  33.         }
  34. }
复制代码
这段代码在序列化的时候就将数组看成了一个对象,二维数组也是这样可以看成是一个对象;
但在某些地方还是看成对象数组看处理的,比如说foreach循环中。

评分

参与人数 1技术分 +1 收起 理由
薛鹏鹏 + 1

查看全部评分

回复 使用道具 举报
如果您的问题已经解决
请更改分类未解决为已解决
保持队形,谢谢合作

详情参考 如何修改分类
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马