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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© librazeng 中级黑马   /  2013-5-27 12:27  /  2249 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 librazeng 于 2013-5-27 21:10 编辑

请问这是为什么?
String[] str={"3","5","6"}数组中每个元素都是一个字符串对象
int[] num={3,5,6,7}num数组是一个对象

整理答案:
String类是引用数据类型,创建的“3”,“5”,“6”都是字符串对象;
int是基本数据类型,所以不是对象。
数组本身也是引用数据类型

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

12 个回复

倒序浏览
什么意思。
回复 使用道具 举报
哥们儿你理解错了!
String[] str={"3","5","6"},这应该是一个字符串的数组,String是用来修饰字符串的
int[] num={3,5,6,7}这儿是一个整数的数组,int是数据类型


评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

回复 使用道具 举报
本帖最后由 mvplee 于 2013-5-27 13:17 编辑

根本在于String是一个引用数据类型,
int是基本数据类型,如果把int换成Integer就和String类一样了,都是对象,都是引用数据类型!

任何数组都是对象,都是引用

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

回复 使用道具 举报
我懂你问的意思:
    数组是一种容器,它可以存储对象,也可以存储基本类型的数据
    第一种存入的String类型的元素是对象,加了" "表示的是字符串
      第二种存入的是int类型的元素

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1

查看全部评分

回复 使用道具 举报
String str = new String("abc");
这是两个对象,一个是new出来的在堆内存中。一个就是“abc”,它在常量池中。
所以啊,“abc”是一个对象,那String[] str={"3","5","6"}数组里面的元素就都是对象啦。

另外  int[] num={3,5,6,7}里的元素是基本数据类型不是一个对象。

基本类型的一维数组可以被当作Object类型使用,不能当作Object[]类型使用;
非基本类型的一维数组,既可以当做Object类型使用,又可以当做Object[]类型使用

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1

查看全部评分

回复 使用道具 举报
我觉得老师那么说是想说明两点:
1.在  java中万物皆对象(PS:我一新手说这,会被狂吐槽的,此处飘过。。。),数组是对象,字符串也是对象因为String类。
2.你也可以这么理解,java中所有字符串都是对象,字符串在java中不是基本数值类型,因为String类的原因,其实我们在写入String str="3"时,就是创建了1个“3”对象.而数组num中的元素int,是基本数值类型,所以数组num中的元素都是基本数值类型(当然你也可以把它们封装成对象,这是后话)

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

回复 使用道具 举报
JDK1.5以后的新特性,自动封箱拆箱
回复 使用道具 举报
风爽 中级黑马 2013-5-27 16:15:05
9#
字符串和数组都是引用型的,String每被new一次就创建一个字符串对象。对于字符串数组String[] str={"3","5","6"},首先,这是一个数组所以是一个对象,数组中的每一个元素又是一个字符串,当然也是一个对象了。但是对于int[] num={3,5,6,7}来说,num是一个数组,为一个对象,但是num数组中的元素都是int型的,int是java中的基本数据类型。

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 赞一个!

查看全部评分

回复 使用道具 举报
数组是引用类型的,因此两个数组整体都是一个对象。同时,字符串也是引用类型,而整形是基本类型,因此数组中的单个字符串也是对象,但数值不是。

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
[]前的 String 或者 int 指的是数组中元素的数据类型

而 str 和 num 的数据类型是数组类型 属于引用型数据类型

另外,由于刚看到内部类,不了解后面讲的东西,对楼主要问的知识点不太明白=。=

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

回复 使用道具 举报
感谢大家的热情回答,谢谢!!
回复 使用道具 举报
陈雨 发表于 2013-5-27 13:20
我懂你问的意思:
    数组是一种容器,它可以存储对象,也可以存储基本类型的数据
    第一种存入的String ...

版主也太好了吧,这也加分了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马