split() 返回的不是String[] 不是和list一樣操作方法嗎?

4 views
Skip to first unread message

derekypp peng

unread,
Nov 6, 2009, 10:17:28 PM11/6/09
to grail...@googlegroups.com
請問一下大家:

我用
def myLine = "A,B,C"
def mDefaut = myLine.split(',')


可是我想讓mDefaut 得到的是 mDefaut [0]=A , mDefaut [1]=B , mDefaut [2]=C , mDefaut [3]=""  ,  mDefaut [4]=""
(最後多兩個空字串)

可是我用 mDefaut  = mDefaut + "" 和 mDefaut  << "" 兩種方法都不行

split() 返回的不是String[]  不是和list一樣操作方法嗎?


謝謝





Tigerf

unread,
Nov 6, 2009, 10:31:00 PM11/6/09
to grail...@googlegroups.com
数组和List应该不同的吧,我想你应该先把数组转换为List
def mDefaut = myLine.split(',') as List

没试验,大概要这么写。

Thanks & Best Regards
Tigerf


2009/11/7 derekypp peng <dere...@gmail.com>

DANNY

unread,
Nov 7, 2009, 6:45:05 AM11/7/09
to Grails联盟-GrailsUnion
真的可以耶...as List 馬上ok

不過我一直以為String[] 不就是String 的 ArrayList
怎麼用List的 + 號和 << 符號都不能用

非常奇怪耶~

On 11月7日, 上午11時31分, Tigerf <tig...@gmail.com> wrote:
> 数组和List应该不同的吧,我想你应该先把数组转换为List
> def mDefaut = myLine.split(',') as List
>
> 没试验,大概要这么写。
>
> Thanks & Best Regards
> Tigerf
>

> 2009/11/7 derekypp peng <derek...@gmail.com>

Tigerf

unread,
Nov 7, 2009, 10:12:29 AM11/7/09
to grail...@googlegroups.com
普通数组和ArrayList的关系有点像int和Integer的关系,同质,但不一样。


Thanks & Best Regards
Tigerf


2009/11/7 DANNY <dere...@gmail.com>

Phoenix

unread,
Nov 11, 2009, 11:10:04 PM11/11/09
to Grails联盟-GrailsUnion
不认同"普通数组和ArrayList的关系有点像int和Integer的关系",
1、Java数组是不允许动态扩展的,你初始化时数组有几个元素,那就一直是那么多;
2、Java数组只能容纳同类型对象,而List中各个元素可以是不同Class的Instance。

Groovy语法是不是这样呢?


On 11月7日, 下午11时12分, Tigerf <tig...@gmail.com> wrote:
> 普通数组和ArrayList的关系有点像int和Integer的关系,同质,但不一样。
>
> Thanks & Best Regards
> Tigerf
>

> 2009/11/7 DANNY <derek...@gmail.com>

TigerF

unread,
Nov 11, 2009, 11:50:29 PM11/11/09
to grail...@googlegroups.com
任何比喻都是蹩脚的嘛,不用太深究。
1,看怎么理解了,Integer也多出许多int没有的功能。ArrayList的存储实现也确实是一个数组。
2,把泛型加进来考虑,ArrayList对应Object[],String[]对应ArrayList<String>。

Phoenix 写道:

Bin Du

unread,
Nov 12, 2009, 2:11:10 AM11/12/09
to Grails联盟-GrailsUnion
def mDefaut = myLine.split(',').toList()
Reply all
Reply to author
Forward
0 new messages