java中的字符串数组

约翰尼 2008-11-08 07:48:46
在java中定义一个字符串数组
String StrArray[] = new String[100];
对于以上定义,我是这么想的不知道对不对:上面定义了一个String类型的对象数组,大小为100个对象。
有人认为上面的定义是让这100个对象引用(就是StrArray[0]、StrArray[1]……StrArray[99]了)都赋为null。那我就奇怪了,赋为null那就意味着没有给对象本身开辟内存空间,那和使用了关键字new不就矛盾了吗?
但是如果这个定义给每个对象都开辟了内存空间,那每个对象占用多少空间啊,怎么没说明大小就编译通过了?


...全文
164 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
约翰尼 2008-11-08
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 vtudiv 的回复:]
给100个引用开辟了空间.
[/Quote]
对的
vtudiv 2008-11-08
  • 打赏
  • 举报
回复
给100个引用开辟了空间.
Robiplus 2008-11-08
  • 打赏
  • 举报
回复
sunhualong5560 2008-11-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 Crab_emb 的帖子:]
赋为null那就意味着没有给对象本身开辟内存空间,[/Quote]

已经开辟了内存空间,只是赋个初值null.

二维数组的,第二维才是没有开辟内存空间的.使用时才开辟.
约翰尼 2008-11-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 Robiplus 的回复:]
开辟的空间是用来存放指向string对象引用的空间.....理论上大小等于引用的大小
[/Quote]

你的意思是字符串数组其实就是字符串的引用数组,每个下标对应的只是引用?
Robiplus 2008-11-08
  • 打赏
  • 举报
回复
开辟的空间是用来存放指向string对象引用的空间.....理论上大小等于引用的大小

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧