{cdate:2010-08-25}
{what: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
<script src="http://gist.github.com/558711.js?file=test.groovy"></script>