{cdate:2010-08-25}

{what:groovy}

  1. if で空のリストが true にならない件(Groovy)

いままで次の2行の groovy は等価だと思っていた...


list=[] ; if( list       ){ println 'OK-1' }
list=[] ; if( list!=null ){ println 'OK-2' }

実行してみればわかることですが、
OK-2 しか標準出力されません。

if( list ) では、
listサイズが1より多くないと true とは評価されない。

以下のようなテストコードを実行すればよりはっきりする。


assert ((boolean)list=[]) == false

    1. まとめると

<script src="http://gist.github.com/558711.js?file=test.groovy"></script>